デフォルトの配列リストに新しい要素を追加できませんでした。とてもではないことusr
としてClassCastException
を引き起こすだろう、私は最後の2日間、それについて検索しましたが、私はその背後にデフォルトのarraylistに要素を追加する
public class User {
private int id;
private String name;
public User(int id, String name) {
this.id = id;
this.name = name;
}
}
public class User2 {
public static List<User> list = new ArrayList<>();
public User2(int i, String abc){
list.add(new User(1,"abc"));
list.add(new User(2,"bcd"));
}
public List<User> getList() {
return list;
}
public void setList(List<User> list) {
this.list = list;
}
public static void main(String[] args) {
User2 user2 = new User2(3,"def");
List<User2> usr = new ArrayList<>();
usr.add(user2);
list.add((User) usr);
for(User temp: list){
System.out.println(" listing "+temp);
}
}
}
'新しい要素を追加できません。 - 説明してください。 –
どちらが「デフォルト配列リスト」ですか? – 4castle
'list.add((User)usr)'は 'usr'を' User'にキャストしています。 'usr'は' List 'です。なぜあなたはそれをやっているのか、あなたはそれが何をすると思いますかを説明してください。 –