创建一个仅包含字符串的 ArrayList。使用增强的 for 循环打印 [关闭]
Posted
技术标签:
【中文标题】创建一个仅包含字符串的 ArrayList。使用增强的 for 循环打印 [关闭]【英文标题】:Create an ArrayList only containing Strings. Print using enhanced for loop [closed] 【发布时间】:2012-10-22 17:34:58 【问题描述】:这是我的程序:
创建一个仅包含字符串的 ArrayList 将以下内容按顺序添加到列表中
玛丽 约翰 马亨德拉 萨拉 何塞 朱迪使用增强的 for 循环打印列表 在 Mahendra 前面和 John 后面插入 Harry 然后从列表中删除位置 4
这是我写的:
import java.util.ArrayList;
import java.util.Scanner;
public class Name
public static void main(String[] args)
ArrayList<String> names = new ArrayList<String>();
Scanner input = new Scanner(System.in);
names.add(input.nextLine());
names.add(input.nextLine());
names.add(input.nextLine());
names.add(input.nextLine());
names.add(input.nextLine());
names.add(input.nextLine());
names.add(input.nextLine());
for (String n : names)
System.out.println(n);
我想我在添加和删除时遇到了问题。我相信其他一切都应该没问题。
【问题讨论】:
你看过 ArrayList 的 javadoc 了吗? 不,但我每天都花 4 个小时在谷歌上搜索所有我能找到的东西。我在开发环境中尝试了很多东西,但并没有真正取得任何进展。 那么看看javadoc也许会有所帮助。 你怎么能用谷歌搜索 4 个小时而不是访问 javadocs? 【参考方案1】:您可能想使用以下方法来插入和删除:
void add(int index, E element)
E remove(int index)
例如Mahendra
在索引2(索引从0开始),然后在Mahendra
前面加上Harry
,如下:
names.add(2, "Harry"); //This will push Mahendra at index 3
要删除当前索引 4,
names.remove(4);
要删除以前的索引 4,现在已成为索引 5,
names.remove(5);
【讨论】:
@user1793131:请不要忘记接受答案。【参考方案2】:indexOf() 将让您找到给定条目的位置, add(index, object) 将让您在索引处插入。
public static void main(String[] args)
List<String> names = new ArrayList<String>();
names.add("Mary");
names.add("John");
names.add("Mahendra");
names.add("Sara");
names.add("Jose");
names.add("Judy");
names.add(names.indexOf("Mahendra"), "Harry");
for (String name : names)
System.out.println(name);
【讨论】:
以上是关于创建一个仅包含字符串的 ArrayList。使用增强的 for 循环打印 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Java的动态数组:ArrayList的简单运用(增删改查)