了解Java Iterator示例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了了解Java Iterator示例相关的知识,希望对你有一定的参考价值。

我正在通过HackerRank为Java工作,发现了以下关于Iterator的问题。https:/www.hackerrank.comchallengesjava-iteratorproblem.

谁能解释一下几个项目。

初始扫描器是如何工作的(即主函数之后的那个)?如果你看到问题陈述,它说一开始会有一个未知数的整数(未知数的整数,后面是 "###"字符,然后我们要打印剩下的未知数的字符串),我们创建两个变量m和n来配合扫描函数。但是我不明白for循环,我们是如何设置参数的?(i=0;i<n;i++); 谁能解释一下怎么会有这种情况?i < n 部分工作?不是吗?n 一个任意的未知数?

同样,底部的Iterator函数是如何工作的?是不是只打印出ArrayList中的所有元素?或者说,如果 Iterator 中出现了中断,那么打印出来的元素只是它后面的元素?

import java.util.*;

public class Main{


       static Iterator func(ArrayList mylist){
          Iterator it=mylist.iterator();
          while(it.hasNext()){
             Object element = it.next();
             if (element.equals("###"))

                break;
            }
          return it;

       }

       @SuppressWarnings({ "unchecked" })
       public static void main(String []args){
          ArrayList mylist = new ArrayList();
          Scanner sc = new Scanner(System.in);
          int n = sc.nextInt();
          int m = sc.nextInt();
          for(int i = 0;i<n;i++){
             mylist.add(sc.nextInt());
          }


          mylist.add("###");
          for(int i=0;i<m;i++){
             mylist.add(sc.next());
          }

          Iterator it=func(mylist);
          while(it.hasNext()){
             Object element = it.next();
             System.out.println((String)element);
          }
       }
    }

以上是关于了解Java Iterator示例的主要内容,如果未能解决你的问题,请参考以下文章

Java集合框架--Collection接口的使用 & 迭代器(Iterator)遍历原理

Java中 forEach() 和 Iterator 与 增强for循环 的那些事儿

java JAQL片段示例1:创建数据库

Java中Iterator用法整理

Java学习之Iterator(迭代器)

Java学习之Iterator(迭代器)的一般用法