[英]Java: getting incorrect string.length() after using trim()
我有字符串"22"
,長度為3;
我用.trim()
還有什么可能是這個原因?
您應該向我們提供證明該問題的代碼,但是我想您是這樣做的:
String str = "22 ";
str.trim();
System.out.println(str.length());
但是str.trim()
不會更改str
(因為字符串是不可變的)。 而是返回修剪后的新字符串。 所以你需要這樣的東西:
String str = "22 ";
str = str.trim();
System.out.println(str.length());
嘗試這個:
System.out.println(java.util.Arrays.toString(theString.toCharArray()));
這將轉儲char[]
版本的String
,因此我們也許可以查看它是否包含任何有趣的東西。
因為我在提出問題時找到了理由,所以我要回答自己。
如果字符串是由.substring或split創建的,則將保存整個字符串以及子字符串的位置和長度。
顯然無法修剪(是“ 22”)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.