2016-11-30 40 views
0

我試圖建立有一個字符串參數然後將字符串的單個字符到一個ArrayList實例字段將字符串中的所有字符的一個數組列表(JAVA)

ArrayList<MyCharacter> charSequence = new ArrayList<MyCharacter>(); 

public Word(String x) { 
    for (char i : x.toCharArray()) { 
     charSequence.add(i); 
    } 
} 

構造我不斷收到錯誤:類型ArrayList中的方法add(MyCharacter)不適用於參數 (char)。

它告訴我改變charSequence.add(i); charSequence.addAll(i);但後來我只是得到另一個錯誤,告訴我改回它添加

建議?

+4

'MyCharacter'和'Character'不相同 – iNan

+0

請提供總碼。 MyCharacter類應給出 –

+0

您的問題是否解決? @ 123 – Jarvis

回答

0

如果你想把你的ArrayList中的字符,你應該有一個正確的Generic類型輸入根據你的ArrayList。由於ArrayList的通用類型爲MyCharacter,因此只能將MyCharacter類的值放在ArrayList上。這就是爲什麼你一開始就錯了。請嘗試將其更改爲Character。像這樣:

ArrayList<Character> charSequence = new ArrayList<Character>(); 
0

聲明該泛型類型MyCharacterArrayList,但你嘗試將char追加到它,這兩種類型是不同的。試試這個:

ArrayList<Character> charSequence = new ArrayList<>(); 
0

您不能擴展JDK的Character類,因爲它是最終的。你可以做的是你可以用你自己的Character類修補JDK Character類,或者你可以創建Character類的完整克隆,它是你的MyCharacter。 This是openjdk的Character類。如果您想修補java.lang.Character類,您可以創建相同的包並按照以下操作。

enter image description here

相關問題