[英]Incorrect string length
這似乎有些奇怪,但是我有一段代碼以非常簡單的方式記錄了我的字符串及其長度,然后是它的長度:
log.v("something", myString + " -- " + myString.length);
奇怪的是,程序運行時我在日志視圖中看到的是:
.1.29 -- 9
我很確定我的字符串在這里沒有9個元素。
我必須說我的完整字符串確實是從包含一些奇怪字符的串行藍牙設備加載的,但是我確保我通過一個函數繞過了它們,盡管我無法像在這里那樣將它們全部過濾掉。
為什么在字符串變量中看到這種矛盾? 以及我如何期待
可能的錯誤:
myString
(至少在上面的代碼中)。 myString
但長度是從mString
。 這些可能是導致錯誤的原因。
您的字符串長度為9
。 您正在連接兩個字符串,然后寫出它的長度。 log.v("something", myString + " -- " + myString.length);
其中myString+' -- '
的長度為myString.length()+ 4
,因此您有.1.29
長度為5
而' -- '
長度為4則為9
您是否嘗試過刪除可能的空格?
myString.trim().length
由於某些原因,某些字符可能未在記錄器中輸出。 嘗試這個:
for(int i=0; i<myString.length();i++)
{
log.v("something", "character number " + i + ": " + myString.charAt(i));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.