2013-04-15 90 views
-9

總是遇到Java字符串的最後一個字符串符號末尾問題。它似乎佔據了一個空間,因此它可能會返回不同的答案時,如果字符串[A] ==字符串[B],甚至有時a.equals(B)仍然無法工作,甚至A和B似乎是相同的,但其中一個包含一個結束標誌。 不知道哪個函數可以用於字符串的忽略功能?Java字符串以空格結尾

+2

你可以試着用'.trim()'' – Blender

+1

字符串#trim','字符串#修剪空白startsWith' ...? – MadProgrammer

+3

'string [a] == string [b]'不要那樣做 – Thilo

回答

4

使用String.trim()清除周圍的空白,然後用String.equals()==,見15.21 Equality Operators在Java語言規範的全部細節。)。請記住String實例是不可變的,因此String.trim()會返回一個新的String,它是equals()檢查中必須使用的實例。

請注意,trim()也刪除主要空白。如果這是不希望的,則使用String.substring()刪除尾隨的空白。

1

應該總是在trim()之前比較的字符串。

+1

爲什麼我們應該總是在比較時修剪字符串? – sabisabi

+0

對於任何**有意義的**比較,都有助於減少bug。 – Ankit

0
trim() 

將在開始和結束時返回沒有空格的字符串。

例:

String s =" test "; 
s =s.trim(); //will become "test" 
0

你只能用stringA.equals(stringB);刪除空格使用.trim()

相關問題