java中split方法为什么无法分割.

来源:百度知道 编辑:UC知道 时间:2024/05/16 01:53:57
Double d = 1.234;
String str = d.toString();
System.out.println(str);
String [] ss = str.split(".");
for(int i=0;i<ss.length;i++)
{
System.out.println(ss[i]);
}
该程序无论怎么输出,都无法用.来分割

需要转义的
String [] ss = str.split(".");
改成String [] ss = str.split("\\.");
或者String [] ss = str.split("\.");
你试试 我电脑没环境

.是正则表达式里的一个关键字,如果没有经过转义split会把它当作一个正则表达式来处理的,所以要改成String [] ss = str.split("\\.");

分割浮点数直接用数学运算好。字符串操作比数学运算慢多了。
Math.floor(d),d-Math.floor(d)
不过你非要用字符串分割,那就要注意split参数不是标准字符串,而是个正则表达式。