初识java集合1

java集合类是一种工具类。


集合与数组的区别:

数组元素的值可以是基本内型的值也可以是对象的引用变量

集合元素的值是对象的引用变量


java集合可以大致分为三大类:

set集合,无序,由于无序从而导致不能重复,根据元素自身来访问;

list集合:类似数组,但是长度可以改变,根据元素索引来访问;

map集合:每项数据由俩个值组成——key-value,由key来访问;

Queue:队列集合实现;


常用操作集合元素方法:(参见API)

boolean add(Object  o):向集合中添加元素,如果添加成功,返回true;

boolean remove(Object  o):删除集合中元素o,如果成功,返回true;

Iterator iterator():返回一个iterator对象,用来遍历集合元素;

........................


集合元素遍历:


iterator遍历:Iterator没有保存对象的能力,如果需要创建iterator对象,则必须有一个被迭代的集合

使用iterator访问Collection集合元素时,Collection集合中的元素不能被改变,只有通过Iterator的remove方法删除上一次的next方法返回的集合元素才可以,否则抛出异常

由下例可知,Iterator并不是把集合元素本身传递给了迭代变量,而是把值传递给了迭代变量


public class DemoTest1

{

public static void main(String args)

{

//创建一个集合

Collection Students = new HashSet();

//添加集合元素

Students.add("王二");

Students.add("张三");

Students.add("l李四");

//获取name对应的迭代器

Iterator it=Students.tterator();

     //boolean hasNext()方法,如果被迭代的集合元素没有被遍历,返回true;返回的数据内型是object内型

while(it.hasNext())

{

//强制类型转换

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


if(student.equals("张三"))

{

//从集合中删除上一次next方法返回的元素

it.remove();
}

student="王五";

}

System.out.println(Students);

}

}


foreach遍历:

foreach循环中的迭代变量是系统依次把集合元素的值付给迭代变量

public class Demo2

{

public static void main(String args)

{

//创建一个集合

Collection Students = new HashSet();

Students.add(new String("王二"));

Students.add(new String("张三"));

Students.add(new String("李四"));

for(Object obj :Students)

{

//student集合元素的迭代变量

String student=(String)obj;

if( student .equals("李四"))

{

//引发异常------使用iterator迭代过程中,不可以修改集合元素

Students.remove(student);
}
}

System.out.println(Students);
}
}


你可能感兴趣的:(初识java集合1)