Java中的字符串列表

时间:2018-11-23 08:04:32

标签: java

我对将值设置为Java中的字符串列表有疑问。

例如,如果您有一个名为名称的字符串列表,那么如何将第3个名称设置为值“ San Diego”?

我尝试了names.add(2,“ San Diego”),但是它不起作用。

非常感谢您的帮助!

5 个答案:

答案 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;
  }

}