Day14-13_List集合存储学生对象三种方式遍历
这应该算是个总结了,List遍历的总结
噢,果然是多看几遍思路就有了
首先是定义学生类,没错!就应该是先定义!!!你要搞懂定义是什么意思就明白了。注意是定义不是创建,这两个是有区别的,去看面向对象的那一章里面有写。
定义就是右键定义一个学生类。创建是new创建一个对象。定义是鼠标创建是代码
等到定义完所需要的类(事物)之后,才开始到测试类,最后才到测试类
比如你需要一把武器,一个盔甲,那你需要定义武器类和盔甲类,定义这些完最后才到测试类
然后测试类中,需要一个集合,那就要创建一个集合的对象来调用它。需要3个学生类(对象),那就需要创建3个学生类的对象。
“存储3个学生对象”
就是把创建的3个学生对象添加进集合种,用add()方法
“遍历集合”
顾名思义就是把集合中的元素遍历出来,有3种方法,迭代器,for循环,增强for循环
我建议你手动敲一遍这些练习,很有用的
这一部分的视频重点就是遍历集合
1--------------------------迭代器遍历集合的方法
这其实是一个固定的格式了,以后都可以直接照猫画虎,搬上来这个固定格式,修改2个部分就行了,重点也就是这2个部分
1、调用集合的iterator();方法来获取迭代器,这里创建的集合对象名为list,所以这里是list.iterator();,需要注意这里如果创建集合对象民不是list,那就不是list
2、唯一需要改变的就是 迭代器的名字“it”,你创建的是什么名字就用什么名字
除了这两个会变,其他的都不会变得,s变不变随你
最好就是能理解这个逻辑,而不是单纯记忆
1、调用集合list的iterator方法返回值为迭代器/获取迭代器,并赋值给it,这里建议你用ctrl+alt+v直接获取左边的,简单很多,压根既不用记左边的
2、调用迭代器对象it的hasNext();方法,用来判断集合中是否有下一个元素,有则返回ture,没有返回false。注意了,因为是要遍历,所以需要用while(表达式)循环语句,直到表达式为false,也就是it.next();返回值为false,集合没有下一个元素了,才跳出循环
3、把获取的元素赋值给Student类的对象s,因为本身这个集合里存储的就是对象,还是Student对象,所以得用Student类的对象来接受。这里我建议你写了右边后同样快捷键直接获得左边的代码
4、打印输出咯,不过要注意打印输出对象得到的是地址值,想要打印输出对象的什么内容就要用get方法
2----------------普通for循环遍历
注意:普通for循环遍历只能用于带有索引值的集合/数组
普通for遍历方式用的很多了,格式也都是一个样的,你记住也好,理解更好。
其实用多次就熟悉了,脑子就不用想了直接肌肉记忆
1、直接list。For。i即可获得遍历的for循环。格式也都是固定一样的
2、注意了,你这个集合中的元素是对象!对象!对象!所以你获得索引值是对象类型的。得需要同样的对象类型接受,这里直接也建议你右边写完之后快捷键。原本如果集合中的元素不是对象那就list。Get(i)就行了,但是这个是对象所以不行
其实你每次写完,都用快捷键保持这个习惯就行了,就可以知道你这段代码的返回值是什么
3----------------增强for循环
for( 元素的数据类型 变量 : 集合或者数组 ){
Sout
}
是真尼玛的简单