package com.lanou.review02;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class ListTest {
// List 的创建;
/*
* 1、List是一个接口, 是被放置在java.util包下的一个接口
* 2、List是Collection这个接口的子接口,list继承了这个接口中的所有的方法;
* 3、list实现过程有两种方式,一种是实现LIST接口,创建一个list类,另一种是使用java提供的对于list接口的具体实现类;
* 4、java提供的具体实现类有两种,一种是arraylist 另一种是linkerlist要牢记两种方式的特点 5、认识一下迭代器;
* 6、认识一个新东西。叫泛型 规定对象类型
* 7. ArrayList <> 这个括号里面也就是泛型 只能写引用数据类型
* 引用数据类型 有三类 数组,接口 类 详情可以看我
* https://blog.csdn.net/NBDR_YL/article/details/79733069
*/
List list = new ArrayList<>();
//list模拟多维的数组
//二维数组。我们叫做以一维数组为元素的数组,
//那么二维的list,我们可以描述为以list为元素的list
List<List<NewArticle>> lists = new ArrayList<>();
public void bianLi(List<NewArticle> list) {
/*
* 1、遍历list,使用最基本的循环;
*/
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
/* 2、第二种遍历方式 foreach */
public void bianli2(List<NewArticle> list) {
for (NewArticle newArticle : list) {
System.out.println(newArticle);
}
}
// 3、第三种遍历方式 迭代器
public void bianli3(List<NewArticle> list) {
Iterator<NewArticle> iterator = list.iterator();
while (iterator.hasNext()) {
NewArticle news = iterator.next();
System.out.println(news);
}
}
// 4.第四种遍历方式 递归方法。
public void bianli4(List list) {
if (list.size() != 0) {
System.out.println(list.remove(0));
}else{
return;
}
bianli4(list);
}
}