public boolean setValidColor(String input, String colors) {
int exists;
isValidColor = true;
char[] colorch = colors.toCharArray();
Arrays.sort(colorch);
for(int i = 0; i < input.length(); i++)
{
exists = Arrays.binarySearch(colorch, input.charAt(i));
if(exists == -1)
{
isValidColor = false;
break;
}
}
return isValidColor;
}
我在比較不同長度的兩個字符串和在僅有1的無效輸入的實例返回false麻煩..如何比較兩個不同長度的字符串,並僅爲1個無效字符返回false?
例如: 可能的顏色是RGOPYB和輸入顏色YZOR。 'Z'是不可能的,我需要編碼返回false,但代碼不斷返回true。我哪裏錯了?
編輯:這個代碼比這個更多(做OOP),這只是一個我不斷遇到麻煩的方法。
你能改寫這是......什麼是有意義?你把'String'與'String.equals()'進行比較......看起來你正在嘗試做一些與之完全不同的事情。 –
你過於複雜...... –
我相信他正在像字符集那樣對待字符串,所以順序無關緊要。 – MeBigFatGuy