创建一个仅包含字符串的 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 循环打印 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何创建类的 ArrayList?

简易版Java ArrayList(增删改查)

Java的动态数组:ArrayList的简单运用(增删改查)

如何检查arraylist中的数组是不是包含某个值?

拯救初学者之开发项目如何正确运用ArrayList,while实现项目的循环和数据增删改查

根据索引 id 的 ArrayList 过滤 JavaRDD