如何找到小数点

时间:2013-12-28 20:49:55

标签: java double decimal

我在查询char数组中小数点的位置时遇到问题。

我使用以下方法将double(Price)转换为char数组:

char[] arrayPrice=Double.toString(Ad[i].Price()).toCharArray();

现在我想找到小数点的位置。

我试过

for (int k=0; k<arrayPrice.length; k++) {
    if (".".equals(arrayPrice[k])) {
        dotPosition=k;
    }
}

但它一直给我0。

谢谢!

2 个答案:

答案 0 :(得分:3)

您正在比较不同的类型,这将始终为false

".".equals(arrayPrice[k])

相反,您可以使用

'.' == arrayPrice[k]

但String类提供了一些utils方法,例如String#indexOf(..)

  

返回第一次出现的字符串中的索引   指定的字符

String price=Double.toString(Ad[i].Price());
price.indexOf('.');

答案 1 :(得分:1)

A“。”充当通配符。 所以不要使用

  ".".equals(arrayPrice[k])

你可以使用

  '.'==arrayPrice[k]
if语句中的

。 这肯定会解决问题。