我对将值设置为Java中的字符串列表有疑问。
例如,如果您有一个名为名称的字符串列表,那么如何将第3个名称设置为值“ San Diego”?
我尝试了names.add(2,“ San Diego”),但是它不起作用。
非常感谢您的帮助!
答案 0 :(得分:2)
要更新现有值,请使用names.set(2,"String");
答案 1 :(得分:2)
names.add(2, "San Diego")
将在第3个位置添加一个新元素(索引2),但是只有在List
中已经包含至少2个元素时,它才有效。
names.set(2, "San Diego")
会将第3个元素(索引2)设置为所需的值,但是只有在List
中已经包含至少3个元素时,它才有效。
要获取第3个元素,应使用names.get(2)
(同样,List
必须至少包含3个元素才能起作用)。
答案 2 :(得分:1)
如果要替换列表中的现有项目,则必须使用set
而不是add
names.set(2,"San Diego");
在这里 2 表示从0开始的索引。
然后是您要添加的字符串
如果要从列表中读取值,可以使用get
String value = names.get(2);
答案 3 :(得分:0)
如果列表已经包含至少2个元素,它将起作用。
names.add(2, "San Diego") it will override the 3rd element or at index 2.
始终安全使用
names.set(2, "San Diego") it will set the 3rd value or at index 2 if the list contains at least 3 elements.
否则,它将抛出IndexOutOfBoundsException:异常。
答案 4 :(得分:0)
这是您可以执行的基本操作,您可以执行很多操作。 一个建议尝试尝试,并尝试不要放弃。 这是java码头的is链接供您参考 Java doc for List
package com.varun.list;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
//Create array list
List < String > names = new ArrayList < String > ();
//Create few names
String sam = "Sam";
String jamie = "Jamie_dogLover";
String bucy = "The Bucky";
// add all names in the list
names.add(sam);
names.add(jamie);
names.add(bucy);
System.out.println("List values :" + names); //Output : List values :[Sam, Jamie_dogLover, The Bucky]
//Update the second index that is -> The Bucky, because list index starts from 0
names.set(2, "New Bucky");
System.out.println("New List values :" + names); //Output : New List values :[Sam, Jamie_dogLover, New Bucky]
//Lest say you want to remove the the 1st index that is jamie
names.remove(jamie);
System.out.println("Updates List values :" + names); //Output : Updates List values :[Sam, New Bucky]
//Let say you get a list of name from somewhere and you want to add into you existing list(names)
names.addAll(listOfDummyNames());
System.out.println("Updates List values with dummy names :" + names);
//Output : Updates List values with dummy names :[Sam, New Bucky, Name0, Name1, Name2, Name3, Name4]
//Let say you want to to remove all the name who has "name" String in it
Iterator < String > itr = names.iterator();
while (itr.hasNext()) {
String name = itr.next();
if (name.contains("Name")) {
itr.remove();
}
}
System.out.println("List after removing all name who has Name in it : " + names);
}
private static List < String > listOfDummyNames() {
List < String > dummyList = new ArrayList < String > ();
String name = "Name";
for (int i = 0; i < 5; i++) {
dummyList.add(name + i);
}
System.out.println("List of dummy Names :" + dummyList);
return dummyList;
}
}