[英]Java add variable to string array
我有一个包含将显示的城市名称的小代码。 现在希望用户可以使用扫描仪添加名称,我知道扫描仪的代码但不知道如何添加变量。
我有代码:
String[] cityNames = { "Tiel", "Culemborg", "Houten", "Geldermalsen", "Meteren", "Buren" };
System.out.println(Arrays.toString(cityNames));
不,你不能用数组来做,因为大小是固定的,一旦声明。
您可能正在寻找收藏。 优先使用List
接口和ArrayList
实现。
原因是ArrayList
是
List 接口的可调整大小的数组实现。
List<String> cityNames = new ArrayList<>();
现在,您的cityNames
List
有了add, remove
等方法以及更多有用的方法
您可以使用List<String>
,获取输入值并添加它:
List<String> cities = new ArrayList<>();
cities.add(userInput);
列表比数组更好用,因为它的长度是可以修改的。
数组具有固定长度。 如果集合中的字符串数量是可变的,则必须使用列表。
如果新元素的索引小于数组的大小,则可以向数组添加新元素。
arr[i]="some value" // to do this i < arr.length
如果在为索引分配新值时数组完全充满元素,则先前的值将被覆盖。 您不能添加超过声明大小的元素,因为数组具有固定大小。
数组是固定大小,因此如果大小已经填充,则无法向其添加值。 对于动态数组,请使用 List 而不是数组。
这样做
List<String> list = new ArrayList<String>(Arrays.asList("Tiel", "Culemborg", "Houten", "Geldermalsen", "Meteren", "Buren" ));
list.add("new value1");
list.add("new value2");
最好使用那里设置,它会自动排除重复条目:
Set<String> cities = new HashSet<String>();
cities.addAll(Arrays.asList("Tiel", "Culemborg", "Houten", "Geldermalsen", "Meteren", "Buren"));
然后添加新城市只需调用:
sities.add(newCity);
Scanner input = new Scanner(System.in);
List<String> cityNames = new ArrayList<String>();
//Add the city names to cityNames list...
cityNames.add(input.next());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.