簡體   English   中英

java 中的 string.trim() 用於包含大量空格的字符串 - 它的長度返回為 1 而不是 0

[英]string.trim() in java for string containing a lot of white spaces - its length is returned as 1 instead of 0

以下代碼無法按預期工作:

public int countSegments(String s) {
    System.out.println(Arrays.toString(s.trim().split(" ")));
    return (s.trim().split(" ")).length;
}

如果 s = " ",那么理想情況下它應該返回 0。但即使打印的數組為空,它也會返回 1。 有人可以解釋一下 1 的結果如何嗎? 請注意,這里的 s 包含多個空格,而不僅僅是 1 個空格。 StackOverflow 不允許輸入多個空格。

如果未找到匹配項,則Stringsplit()將返回new String[]{this} 在您的情況下, s.trim()返回""並且s.trim().split(" ")返回new String[]{""} new String[]{""}是一個長度為 1 的數組。 如果你執行表達式System.out.println(s.trim().split(" ")[0].equals(""))你會得到true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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