List集合即其遍历
1. 首先List<E>集合继承与Collection<E>,是一个接口。
① Collection (集合框架是JDK1.2版本出现的)
② list:是有序的,元素可以重复,以为该集合体系有索引。
经常用到的是实现该接口的ArrayList和LinkedList类
③ Arraylist: 底层的数据结构使用的是数组结构,
特点: 查询速度很快,但是增删稍慢。线程不同步
LinkedList: 底层使用的是链表数据结构。
特点: 增删速度很快,查询稍慢。
Vector:(JDK1.0版本出现的) 底层是数组数据结构,线程同步。被ArrayList替代了。(已经不用了)
2. List的两种遍历方式:
public class Demo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("A");
list.add("B");
list.add("C");
System.out.println("........第一种遍历方式:for遍历......");
for (Object li : list) {
System.out.println(li);
}
System.out.println("........第二种遍历方式:ListIterator迭代遍历......");
ListIterator<String> it = list.listIterator();
while (it.hasNext()) {
Object obj = it.next();
System.out.println(obj);
}
}
}
效果图:

3.使用LinkList模拟一个堆栈或者队列数据结构。即: 堆栈:先进后出 ; 队列: 先进先出
class Duilie{
private LinkedList<Object> link;
Duilie(){
link = new LinkedList<Object>();
}
public void myAdd(Object obj){
link.addFirst(obj);
}
public Object myGet(){
return link.removeLast();//先进先出---若要改成先进后出,将removelast()改成removeFirst()
}
public boolean isNull(){
return link.isEmpty();
}
}
public class Demo2 {
public static void main(String[] args) {
Duilie dl = new Duilie();
dl.myAdd("java01");
dl.myAdd("java02");
dl.myAdd("java03");
dl.myAdd("java04");
while(!dl.isNull()){
System.out.println(dl.myGet());
}
}
}
效果图:

以上为 先进先出,若要改为先进后出,则根据代码中写的改一下就可以了
List集合即其遍历的更多相关文章
- java 15-4 集合的专用遍历工具 迭代器
Iterator iterator():迭代器,集合的专用遍历方式 A:Object next():获取元素,并移动到下一个位置. 有时候会出现这样的错误: NoSuchElementExceptio ...
- Java基础知识强化之集合框架笔记34:List练习之集合的嵌套遍历
1. 需求: 我们班有学生,每一个学生是不是一个对象.所以我们可以使用一个集合表示我们班级的学生.ArrayList<Student> 但是呢,我们旁边是不是还有班级,每个班级是不是也是一 ...
- Ajax获取Json多个集合并同时遍历
Ajax获取Json多个集合并同时遍历: 方法一.:将多个集合放入MAP集合. 后台:Servlet @Override protected void doPost(HttpServletReques ...
- JAVA中集合转数组遍历
JAVA中集合的遍历的一种方法时集合转数组遍历,也是就调用Collection中的toArray(). 代码: public static void main(String[] args) { ...
- Java集合01----ArrayList的遍历方式及应用
Java集合01----ArrayList的遍历方式及应用 前面已经学习了ArrayList的源代码,为了学以 ...
- Map集合的六种遍历方式
学习目标: 熟练掌握Map的遍历方式 例题: 需求:遍历Map集合 代码如下: package com.yy.object.test.test_collection; import java.util ...
- 使用yield关键字让自定义集合实现foreach遍历
一般来说当我们创建自定义集合的时候为了让其能支持foreach遍历,就只能让其实现IEnumerable接口(可能还要实现IEnumerator接口) 但是我们也可以通过使用yield关键字构建的迭代 ...
- Ruby 集合数组常用遍历方法
迭代器简介 先简单介绍一下迭代器. 1.一个Ruby迭代器就是一个简单的能接收代码块的方法(比如each这个方法就是一个迭代器).特征:如果一个方法里包含了yield调用,那这个方法肯定是迭代器: 2 ...
- 【遍历集合】Java遍历List,Map,Vector,Set的几种方法
关于list,map,set的区别参考http://www.cnblogs.com/qlqwjy/p/7406573.html 1.遍历list @Test public void testList( ...
随机推荐
- 2016"百度之星" - 初赛(Astar Round2B) 1006 中位数计数
思路:统计当前数左边比它小|大 i个人,相应右边就应该是比它大|小i个人 l数组表示左边i个人的方案 r表示右边i个人的方案 数组下标不可能是负数所以要加n //#pragma comment(lin ...
- javascript设计模式4
静态成员是直接通过类对象访问的 var Book=(function(){ var numOfBooks=0; function checkIsbn(isbn){ ... } return funct ...
- DateTime和DateTime2
1.与ANSI和ISO8601标准的一致性不同 datetime不符合该标准,datetime2符合该标准.对于新的应用,尽量使用符合标准的类型. 2.表示范围的不同 datetime:1753-01 ...
- 拉格朗日对偶(Lagrange duality)
拉格朗日对偶(Lagrange duality) 存在等式约束的极值问题求法,比如下面的最优化问题: 目标函数是f(w),下面是等式约束.通常解法是引入拉格朗日算子,这里使用 ...
- usb device selection
- Java网络编程(TCP协议-服务端和客户端交互)
客户端: package WebProgramingDemo; import java.io.IOException; import java.io.InputStream; import java. ...
- SaltStack管理从这里开始
Modules 1:查看所有module列表: salt 'jcfx-4' sys.list_modules jcfx-4: - acl - aliases - alternatives - apac ...
- UITableView 详解 教程
看TableView的资料其实已经蛮久了,一直想写点儿东西,却总是因为各种原因拖延,今天晚上有时间静下心来记录一些最近学习的TableView的知识.下面进入正题,UITableView堪称UIKit ...
- sql存储过程exec执行字符串select 的区别
USE [GuangHong]GO/****** Object: StoredProcedure [dbo].[st_MES_SelInspctDetail] Script Date: 11/23/2 ...
- 代码自动生成工具MyGeneration之一(程序员必备工具)
代码自动生成工具MyGeneration之一(程序员必备工具) 转 分类: C#2008-08-06 18:12 16064人阅读 评论(12) 收藏 举报 工具数据库相关数据库stringbrows ...