将数字拆分为小数

时间:2015-01-29 09:08:09

标签: java string split

如何删除之后的所有字符/数字。在一个字符串

String i = "154.232";

我只想要154

谢谢

我的代码:

distance = crntLocation.distanceTo(newLocation)/1000; // in km
double newKB = Math.floor(distance);
String product_distance = String.valueOf(newKB);    
product_distance.replaceAll("\\..*", "");

5 个答案:

答案 0 :(得分:5)

 public static void main(String[] args) {
        String str = "154.232";
        str = str.replaceAll("\\..*", "");
        System.out.println(str);
    }

str.substring(0, str.indexOf("."));

或 //检查.的索引不是-1,然后执行以下操作。

str.split(".")[0];

<强>输出

154

答案 1 :(得分:2)

i=i.split(".")[0];

.split函数将返回点两侧的字符串数组。 你想要在。之前的部分,所以取数组中的第一个字符串。

答案 2 :(得分:2)

使用:

Integer.parse()

Integer.decode()

答案 3 :(得分:1)

使用:

int id = str.indexOf(".");
if (id >= 0) str = str.substring(0, id);

在第一个点之后包括所有字符(如果有的话)。

答案 4 :(得分:0)

首先使用Double.parseDouble(String)将其解析为Double值,然后使用Math.floor将其四舍五入,

String yourString = "154.9418";
// cast it to (int), since Math.floor returns a double
int toInt = (int) Math.floor(Double.parseDouble(yourString));

输出

154

您可以使用StringTokenizer拆分字符串

String yourString = "154.964687";
StringTokenizer st = new StringTokenizer(yourString,".");
System.out.println(st.nextToken()); 

输出

154