黑马程序员 java自学笔记 集合

------- android培训、java培训、期待与您交流! ----------

在编写程序的时候,我们不知道所需对象的数量,甚至不知道确切的类型,为了解决这样的问题,推出了集合(对象的引用),例如前面学的数组,数组只是一种能固定大小固定类型的对象引用,如果明确知道自己要保存的是一组基本数据类型,应该使用数组,否则就应该使用集合。

集合的基本类型有 list set map

list 以特定的顺序保存元素   ArrayList 插入和移除元素较慢LinkedList  插入删除较快,随机访问较慢

set 元素不能重复

集合常见方法

add()添加元素

contains() 确定某个对象是否在列表中,

remove()删除一个对象

indexOf()获取该对象在list中所处位置的索引号

比较两个对象是否相同 equals()

retainAll() 交集

removeAll 删除所有元素

isEmpty()是否为空 clear()删除所有 toArray()将集合做为数组



ArrayList a1 =new ArrayList();
		ArrayList a2 =new ArrayList();
		//添加 
		a1.add("a");
		a1.add("bb");
		a1.add("c");
		a1.add("d");
		a1.add("d");
		a1.add("d");
		// 获取集合长度
		System.out.println(a1.size());
		
		//转数组[a, bb, c, d, d] 没下标
		a1.toArray(); 
		System.out.println(a1);
		
		//remove  删除  clear()全删
		a1.remove(2);
		System.out.println(a1);
		
		//判断是否存在 contains
		System.out.println(a1.contains("bb"));
		
		//取出元素
		Iterator it= a1.iterator();
		//System.out.println(it.next());
		while(it.hasNext())
		{
			System.out.println(it.next());
		}

iterator ()要求容器返回一个iterator ,iterator 将准备好返回序列的第一个元素

next()获得序列中的下一个元素

hasNext() 检查序列中是否还有元素

remove()删除最新返回的元素

在调用remove()之前必须先调用next()


linkedList   删除插入操作比ArrayList 更高效,但随机访问要慢一些,

set 不保存重复的元素,




------- android培训、 java培训、期待与您交流! ----------

你可能感兴趣的:(java)