2016-03-14 68 views
2

我将十进制数字转换为字符串,然后使用。(点)运算符分割数字(字符串)。使用java分割十进制值(如字符串)

对于防爆:

double x=Math.sqrt(17);//4.12425325 
String str=String.valueOf(x); 
String ar[]=str.split(".");//But its not getting splitted. 

但是字符串是没有得到分裂成字符串数组AR []。

回答

2

逃脱.split()

String ar[]=str.split("\\."); 

参数split()是一个正则表达式和.在正则表达式有特殊的意义,所以要匹配一个.,你需要逃避它。

1

Split()接受Regex作为参数。所以,我们需要逃避''。这里是'。'装置任何字符Regex,例如:

String s = "123.456"; 
String[] split = s.split("\\."); 
System.out.println(Arrays.toString(split)); 
1

的另一种方法得到的整数部分和小数部分。

String num = "123.45"; 
System.out.println(num.substring(0, num.indexOf("."))); // prints whole number part 
System.out.println(num.substring(num.indexOf(".") + 1)); // prints decimal part 

如果您只对小数部分和整数部分的内容感兴趣,则此方法不涉及使用数组。