2011-07-17 59 views
13

Tôi gặp lỗi khi khai báo ArrayList này dưới dạng một biến mẫu trong Java.Lỗi cú pháp Java ArrayList

private ArrayList<char> correctGuesses = new ArrayList<char>(); 

Lỗi:

Syntax error on token char, Dimension expected after this token 

Tôi có thể không làm cho ArrayLists với kiểu char?

Trả lời

29

Bạn không thể sử dụng một loại nguyên thủy, chứ không phải bạn sử dụng lớp Wrapper của nó .. Vì vậy, thay vì char bạn sẽ phải Character

ArrayList<Character> correctGuesses = new ArrayList<Character>(); 
3

Bạn không thể sử dụng nguyên thủy làm thông số chung. Thay vào đó, bạn sử dụng phiên bản được gói.
Hãy thử điều này:

private ArrayList<Character> correctGuesses = new ArrayList<Character>(); 

Bạn vẫn có thể thêm char loại với nó mặc dù, vì java tự động hộp chúng. tức là

correctGuesses.add((char)63); 

sẽ là một tuyên bố pháp lý.

1

Khai ArrayList bạn sử dụng Character:

private ArrayList<Character> correctGuesses = new ArrayList<Character>(); 

Generics không làm việc với các kiểu đơn giản, chúng yêu cầu các đối tượng.