我有字符串"22"
,我的长度为3;
我使用了.trim()
还有什么可能是这个原因?
答案 0 :(得分:27)
你应该给我们代码来证明这个问题,但我猜你做的是这样的事情:
String str = "22 ";
str.trim();
System.out.println(str.length());
但是str.trim()
不会改变str
(因为字符串是不可变的)。相反,它返回一个新剪裁的String。所以你需要这样的东西:
String str = "22 ";
str = str.trim();
System.out.println(str.length());
答案 1 :(得分:11)
试试这个:
System.out.println(java.util.Arrays.toString(theString.toCharArray()));
这会转储char[]
的{{1}}版本,因此我们可能会看到它是否包含任何有趣的内容。
答案 2 :(得分:-2)
如果字符串是由.substring或split创建的,则保存整个字符串加上子字符串的位置和长度。
这显然不能修剪(是“22”)