1

文字列形式の価格値があります(「2,000」、「3,000」など)

価格値を並べ替えたい

そのために、以下のコードを使用しました:

Comparator<Cars> comparator = new Comparator<Cars>() {

          @Override
          public int compare(Cars object1, Cars object2) {
          // return Float.compare(Integer.parseInt(object1.getPrice()), Integer.parseInt(object2.getPrice()));

           return ((Integer)Integer.parseInt(object1.getPrice())).compareTo((Integer)Integer.parseInt( object2.getPrice())); 

          }

以下のステートメントを実行すると

        Collections.sort(carsList, comparator);

私は得ています

Error:  java.lang.NumberFormatException: Invalid int: "3,000"

誰でも助けることができますか?

4

5 に答える 5

0
return ((Integer)Integer.parseInt(obj1Price.replaceAll(",","") )).compareTo((Integer)Integer.parseInt( obj2Price.replaceAll(",",""))));

動作します

于 2013-08-14T06:43:04.947 に答える