Maison >Java >javaDidacticiel >Quelle est la différence entre la méthode set et la méthode add dans List en Java ?
Il existe deux méthodes très similaires dans l'interface de collection couramment utilisée List en Java :
E set(int index, E element);
E set(int index, E element);
void add(int index, E element);
void add(int index, E element);
Les deux méthodes insèrent des éléments spécifiés à des positions spécifiées dans la collection. Alors, quelle est la différence entre ces deux méthodes ? Ensuite, jetons un coup d'œil aux différences entre ces deux méthodes via ArrayList, notre implémentation de collection couramment utiliséeLes similitudesTout d'abord, jetons un coup d'œil aux similitudes entre ces deux méthodes dans ArrayListIls inséreront au spécifié position dans la collection Nouveaux éléments, tels que les exemples suivants : #在集合的第2位插入一个 F # 通过add方法插入 List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.add(2, "F"); System.out.println(list); #运行结果: [A, B, F, C] #通过set方法插入 List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.set(2, "F"); System.out.println(list); #运行结果: [A, B, F]
#在集合的第2位插入一个 F # 通过add方法插入 List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.add(2, "F"); System.out.println(list); #运行结果: [A, B, F, C] #通过set方法插入 List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.set(2, "F"); System.out.println(list); #运行结果: [A, B, F]
add méthode pour index est 0<= index <= size(), ce qui signifie que la méthode add peut ajouter un nouvel élément après le dernier élément de la collection actuelle ; pour index La plage de valeurs est 0< index < size(), ce qui signifie que la méthode set ne peut couvrir que les éléments existants actuels et que la plage de valeurs ne peut pas dépasser la plage des éléments définis actuellement
#通过add在当前集合的第四个位置插入F List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.add(3, "F"); System.out.println(list); #运行结果: [A, B, C, F] #通过set在当前集合的第四个位置插入F List<String> list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); System.out.println(list); list.set(3, "F"); System.out.println(list); #运行结果: 抛出NullPointerException
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!