簡體   English   中英

Java:使用trim()后得到不正確的string.length()

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM