Разделить строку на строку [] с помощью точки, но вернуть пустой массив

Хорошо, может мне просто нужна вторая пара глаз на это.

У меня есть поплавок, который я превращаю в строку. Затем я хочу разделить его на период/десятичное число, чтобы представить его как валюту.

Вот мой код.:

float price = new Float("3.76545");
String itemsPrice = "" + price;
if (itemsPrice.contains(".")){
    String[] breakByDecimal = itemsPrice.split(".");
    System.out.println(itemsPrice + "||" + breakByDecimal.length);
    if (breakByDecimal[1].length() > 2){
        itemsPrice = breakByDecimal[0] + "." + breakByDecimal[1].substring(0, 2);
    } else if (breakByDecimal[1].length() == 1){
        itemsPrice = breakByDecimal[0] + "." + breakByDecimal[1] + "0";                         
    }                           
}

Если вы возьмете это и запустите, вы получите ошибку индекса массива за пределами границ в строке 6 (в приведенном выше коде )о том, что после десятичной дроби ничего нет.

На самом деле, в строке 5, когда я распечатываю размер массива, он равен 0.

Это слишком смехотворные ошибки, чтобы НЕ быть чем-то, что я просто не замечаю.

Как я уже сказал, еще одна пара глаз — это именно то, что мне нужно, поэтому, пожалуйста, не будьте грубы, когда указываете на то, что очевидно для вас, но я проглядел это.

Заранее спасибо!

6
задан mskfisher 11 May 2012 в 16:18
поделиться