日期:2014-05-18  浏览次数:20759 次

关于数组长度的问题
我想实现把一个字符串以“,”截取分成字符串数组。但是当我截取“,,,”这样的字符串时,截取的字符串数组里面没有值,但是当用   数组名.length   测试时,其数组长度为1;当我截取“xxx,,,”这样的字符串时,截取的字符串数组里面有值 "xxx ",当用   数组名.length   测试时,其数组长度也为1。是不是java里没有0长度数组,这是为什么?现在我就无法用length来判断是否有来个值或没值,我该如何去做判断?请高手指点,谢谢!!!

------解决方案--------------------
不应该,用length来判断是否有值没错
你再看看你要验证的字符串中是否含有空格或者其他字符
------解决方案--------------------
如果原来字符串里面并不存在,,,的话,你用,,,截取的话,得到的将是原来整个字符串本身,不可能为空的,所以length就是为1 , 你输出来测试下就知道了。
------解决方案--------------------
String strValue = "gghjklhjk,fadhjkdkllkl "
String[] strarr = strValue.split( ", ");
------解决方案--------------------
楼主估计自己没搞清楚上面各位的回答
------解决方案--------------------
当字符串本身为 ",,, "时, 再用,,,分割的时, 当然把原来字符串里面的的,,,分离掉,就只剩下空了,自然得到的长度就为0, 而你用 "xxx,,, "分割的时候,原来字符串里找不到这个符合的截取字符串就返回原来字符串本身了,所以长度为1

java里当然有长度为0的数组,楼主你所说的预测,我不是很明白...