0

「サイズ」の列には、100mL、0.5mg、1L、2500cm2のような重さがあります。ml、mg、gram、litre、cm などに従って並べ替える必要があります。解決策を教えてください。文字列比較を試しましたが、重みを考慮する必要があるため、価値がありません。

 public static int safeCompareIgnoreCase(String name1, String name2) {
      if (name1 == name2) { 
        return 0; 
      } 
      if (name2 == null) { 
        return -1; 
      } 
      if (name1 == null) { 
        return 1; 
      } 
      return name1.compareToIgnoreCase(name2); 
    }

    public int compare(InventorySearchResultRecord r1, InventorySearchResultRecord r2) { 
      int result = safeCompareIgnoreCase(r1.getSize(), r2.getSize()); 
      if (result != 0) { 
        return result; 
      } 
    }
4

1 に答える 1

5

ヒント: - 異なる単位の 2 つの値を比較するべきではありません..自分で考えてください ->1 Dollarが大きいか50 Rupees?? それらを同じ単位に変換する必要があります..

そして、まず紙の上でやってみてください. コンピュータなしで仕事を終わらせてください. 答えが得られたら、それをコードに変換してください..

于 2012-09-25T05:58:18.663 に答える