我會建議不要創建一個字符長的子字符串。
if (name.charAt(name.length() - 1) == region.charAt(region.length() - 1)) {
System.out.println(name + " " + region);
}
編輯
我不知道人們爲什麼決定downvote,但爲什麼我建議不要製造一個字符長串,我會添加一個解釋。
if (name.substring(name.length() - 1).equals(region.substring(region.length()-1))
substring
始終創建一個新的String對象。所以這裏創建兩個新的String對象(一個用於兩個字符串的最後一個字符),僅爲相等比較創建。他們立即有資格獲得下一個可能的垃圾回收,因爲他們以後不會被使用。
子串方法return (beginIndex == 0) ? this : new String(value, beginIndex, subLen)
if (name.charAt(name.length() - 1) == region.charAt(region.length() - 1))
charAt
的相關部分返回該位置處的參考字符。所以平等比較是在字符串實例的一個字符上完成的。
charAt方法的相關部分return value[index]
(值爲字符串實例中的char值[])。
你可以使用'name.endsWith(region)' – Rustam