为了账号安全,请及时绑定邮箱和手机立即绑定

实例化到底要怎么做呢?

Course cr1=new Course("1","数据结构"); //这是一个实例化
Iterator it=courseToSelect.iterator();//这也是一个实例

两者到底该怎么使用呢?

正在回答

5 回答

Course cr1=new Course("1","数据结构"):Course之前定义是一个构造方法,new Course作用是实例化对象并赋初值("1","数据结构"),对象名为cr1,类型为Course.

Iterator it=courseToSelect.iterator():可以理解为对象courseToSelect调用iterator()方法.用Iterator类型的变量 it对结果进行接收.

我也是初学者,不知理解是否合理,大家相互交流.

0 回复 有任何疑惑可以回复我~

collection接口都实现了Iterator接口。iterator接口是迭代器。他的作用类似for循环,(后面应该会讲到其实有一种增强的for循环底层还是迭代器)他可以遍历collection的元素。看源码(这是Arraylist下的iterator()方法)

Iterator<E> iterator();

    /**
     * Returns an array containing all of the elements in this list in proper
     * sequence (from first to last element).

返回类型为Iterator。不知道我是否说清楚了

0 回复 有任何疑惑可以回复我~

我觉得你的疑惑是关于第二个实例化,为什么没有new关键字,我觉得应该是上面那个兄弟说的,创建实例有不同的方法。

0 回复 有任何疑惑可以回复我~

这种当然可以啊。就好像人有善恶,创建实例也是可以有不同方式的。

你看一下JDK帮助文档就知道。调用Iterator()方法就是返回一个在一组 T 类型的元素上进行迭代的迭代器。

拿到这个迭代器之后你才可以迭代啊。。

0 回复 有任何疑惑可以回复我~

Course cr1=new Course("1","数据结构"); 

这个创建一个Course类的集合对象cr1。

Iterator it=courseToSelect.iterator();

Iterator叫迭代器,可用来遍历集合中的元素。courseToSelect也是一个集合对象,创建后通过调用xx.hasNext() 判断是否还有元素,通过xx.next()返回object类型的结果,(放到集合中的元素所有的类型都变成object,所以取出来的时候也是object,因此需要进行相应的转换)。下面是例子:

Public class CollectionEach{

    public static void main(String[] args)

    {

        Collection test = new Collection();

        test.add("这是一句字符串");

        test.add("另一句字符串");

        test.add("还有一句xxxx");

        Iterator it = new Iterator();

        //判断是否有元素

        while(it.hasNext())

        {

            //取出集合中的一个元素,并强转为String类型

            String str = (String)it.next();

            System.out.println("通过迭代器遍历集合:"+str);

        }

    }

}

我也是初学者,感觉你学的有点混乱。或者我不知道你想问什么。不太懂的话,还是建议从第一季看起啊,面向对象的基础要掌握好才行。加油~~

0 回复 有任何疑惑可以回复我~
#1

ArBo

Collection test = new Collection();这句有错,不好意思。修改如下: Collection test = new HashSet();
2016-06-05 回复 有任何疑惑可以回复我~
#2

colin3523376

你的迭代器没遍历到test啊,应该改为 Iterator it = test.Iterator();
2016-07-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

实例化到底要怎么做呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信