java-集合-4

package jihe;

import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;

/**
 * 		Set集合
 * 
 * 1.set的集合不能有重复的元素
 * 
 * 2.他有两个实现类		HashSet(散列集合)和TreeSet(树集合)
 * 
 * 3.常用方法:
 * 			1.add();	2.remove();		3.contains(元素);		4.迭代器iterator
 * 
 * 4.树状集合TreeSet
 * 特点: 1.存放有序:这里要注意,要实现ComparaTo()这个接口,这个是用来自动排序的,默认自然递增
 * 		
 * 		 2.不能放null set.add(null);这个会报一个空指针异常的错误!
 * 			但是HashSet就可以放set.add(null);
 * 
 * 5.散列集合HashSet
 * 特点:1.高效快速:这里要重写hashCode和equals两种方法
 * 
 * 		2.HashSet就可以放set.add(null);
 * 
 * 		3.hashCode的功能是获取它的哈希码,也称为散列码,
 * 		实际上是返回一个int数值,作用是起到一个索引位置的作用
 * 
 * 		4.equals是判断两个对象的内容是不是相等的
 * @author 小虎牙
 *
 */
public class jihe_4 {

	public static void main(String[] args) {
		//这里放null就会报错
		Set<Object> setTree = new TreeSet<Object>();
		setTree.add(1);
		System.out.println(setTree.size());
		
		//这里为什么可以放null是因为由哈希表(实际上是一个HashMap的一个实例的)支持
		
		Set<Object> set=new HashSet<Object>();
		set.add(null);
		System.out.println(set.size());
		Set<Object> set1=new HashSet<Object>();
		set1.add(1);
		System.out.println(set.size());
		//这个是因为两个内容是是相等的,即使一个是HashSet,一个是TreeSet,所以返回值为true
		System.out.println(setTree.equals(set1));

		
	}
}

猜你喜欢

转载自blog.csdn.net/huiguo_/article/details/108845441