2012-07-25 73 views
0

我是一個新手程序員,我試圖比較來自不同字符串的兩個字符,這樣我就可以從每個字符串給出一個任意索引並檢查它們是否匹配。從處理網站看來,你似乎可以比較兩個字符串,但是當我嘗試使用字符時,似乎參數(char,char)不適用。有人能告訴我我要去哪裏嗎?謝謝。是否可以比較處理中的兩個字符?

回答

1

也許你可以在將字符串轉換(字符串轉換)爲字符串後傳遞參數。

(字符串(字符),字符串(字符))

+0

謝謝,我只是檢查了處理數據類型轉換指令,並試圖你的建議。它給出了這個錯誤:函數字符串(char)不存在 – 2012-07-25 13:05:53

+0

嘗試「char.toString()」 – Kidus 2012-07-25 17:55:27

+1

嗨,謝謝,我用:Character.toString('CharX')似乎已經完成了訣竅... – 2012-07-29 14:54:24

2

您可以使用StringcharAt()方法/函數在所需的索引來獲得每個字符串的字符,然後簡單地比較:

String s1 = ":)"; 
String s2 = ";)"; 

void setup(){ 
    println(CompareCharAt(s1,s2,0)); 
    println(CompareCharAt(s1,s2,1)); 
} 

boolean CompareCharAt(String str1,String str2,int index){ 
    return s1.charAt(index) == s2.charAt(index); 
} 

注意,當你比較字符串==沒有幫助,你需要使用字符串的equal()

String s1 = ":)"; 
String s2 = ";)"; 

println(s1.equals(s2)); 
println(s1.equals(":)")); 

另外,如果數據來自外部來源,它通常是一個好主意,這兩個字符串在使用相同的情況下比較:

println("MyString".equals("myString")); 
println("MyString".toLowerCase().equals("myString".toLowerCase())); 
0

沒錯。只需使用==,因爲它被解釋爲char數據類型。 這是假設你已經分割字符串中的字符...

char a = 'a'; 
char b = 'a'; 
if(a == b) { 
// etc 
} 

正如上面提到的,使用.equals()的字符串比較。

String a = "a"; 
String b = "a"; 
if(a.equals(b)) { 
// etc 
} 

此外,投一個char作爲字符串的正確方法是STR()不串()