Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从ArrayList打印_Java - Fatal编程技术网

Java 从ArrayList打印

Java 从ArrayList打印,java,Java,我接收一个文本文件并将每个单词存储在arraylist中。然而,问题是,当我遍历arraylist并打印内容时,单词出现了很多次,而且顺序不一定正确。下面是一段代码: public static void main(String args[]) { try { ArrayList storeWord = new ArrayList(); Scanner scannerWord = new Scanner

我接收一个文本文件并将每个单词存储在arraylist中。然而,问题是,当我遍历arraylist并打印内容时,单词出现了很多次,而且顺序不一定正确。下面是一段代码:

 public static void main(String args[])
    {
        try
        {
            ArrayList storeWord = new ArrayList();


            Scanner scannerWord = new Scanner(new File("word"));

            while(scannerWord.hasNext()) {
                String word = scannerWord.next();{
                    storeWord.add(word);

                    Iterator itr = storeWord.iterator();
                    while(itr.hasNext())
                        System.out.println(itr.next());

                }
有人知道问题可能是什么以及如何解决吗?
谢谢。

每次阅读都会打印出完整的列表。这可能就是为什么每个单词都会显示多次

您可能需要:

Scanner scannerWord = new Scanner(new File("word"));

while(scannerWord.hasNext()) {
  String word = scannerWord.next();{
  storeWord.add(word);
}
Iterator itr = storeWord.iterator();
while(itr.hasNext())
  System.out.println(itr.next());

你每次阅读都会打印出你的全部清单。这可能就是为什么每个单词都会显示多次

您可能需要:

Scanner scannerWord = new Scanner(new File("word"));

while(scannerWord.hasNext()) {
  String word = scannerWord.next();{
  storeWord.add(word);
}
Iterator itr = storeWord.iterator();
while(itr.hasNext())
  System.out.println(itr.next());

您需要将迭代器和打印while循环从原始while循环中取出

您需要将迭代器和打印while循环从原始while循环中取出

尝试以下操作

public static void main(String args[]) { 
    ArrayList storeWord = new ArrayList();
    Scanner scannerWord = new Scanner(new File("word"));

    while(scannerWord.hasNext()) {
        storeWord.add(scannerWord.next());
    }

    Iterator itr = storeWord.iterator();
    while(itr.hasNext()){
       System.out.println(itr.next());
    }
}
“打印”循环嵌套在“读取”循环中

试试这个

public static void main(String args[]) { 
    ArrayList storeWord = new ArrayList();
    Scanner scannerWord = new Scanner(new File("word"));

    while(scannerWord.hasNext()) {
        storeWord.add(scannerWord.next());
    }

    Iterator itr = storeWord.iterator();
    while(itr.hasNext()){
       System.out.println(itr.next());
    }
}
“打印”循环嵌套在“读取”循环中