Vector集合和HashSet集合介绍
Vector集合

这个集合是java最早的一个集合,它的底层是一个数组。
Vector是线程安全的,但扩容会增长100%
ArrayList是线程不安全的,但扩容增长50%,能有效利用磁盘空间。
特点
有序的,可以存储重复值和null值。
底层是数组实现的,线程安全。结构与ArrayList非常相似,同样是一个线性的动态可扩容数组。
初始容量是10,没有设置扩容增量的情况下以自身的2倍容量扩容,可以设置容量增量,初始容量和扩容量可以通过构造函数public Vector(int initialCapacity, int capacityIncrement)进行初始化。
public static void main(String[] args) { Vector vector =new Vector(); vector.add("西瓜"); vector.add("鸡蛋"); vector.add("哈密瓜"); //遍历.get方法的返回值是一个对象,i是要取对象的下标 System.out.println("-------使用for循环遍历--------"); for (int i = 0; i < vector.size(); i++) { System.out.print(vector.get(i)+" "); } System.out.println(); //遍历,使用枚举器(跟迭代器一样) System.out.println("-------使用枚举器遍历--------"); Enumeration enumeration =vector.elements(); while (enumeration.hasMoreElements()){ System.out.print(enumeration.nextElement()+" "); } System.out.println(); //判断操作 System.out.println("-------判断操作--------"); System.out.println("是否存在西瓜:"+vector.contains("西瓜")); System.out.println("是否存在鸡蛋:"+vector.contains(new String("鸡蛋"))); System.out.println("是否存在榴莲:"+vector.contains("榴莲")); System.out.println("集合是否为空:"+vector.isEmpty()); System.out.println("-------取值操作--------"); System.out.println("取第一个元素的值:"+vector.firstElement()); System.out.println("取最后一个元素的值:"+vector.lastElement()); System.out.println("取下标为1的值:"+vector.get(1)); //删除操作 System.out.println("-------删除操作--------"); vector.remove("西瓜"); System.out.println("删除西瓜:"+"剩余"+vector); vector.remove(new String("鸡蛋")); System.out.println("删除鸡蛋:"+"剩余"+vector); }
HashSet集合介绍
java.util.Set 接口和java.util..ist接口一样,同样继承自collection接口,它与collection 接口中的方法基本一致,并没有对collection接口进行功能上的扩充,只是比collection接口更加严格了。与List 接口不同的是,set 接口中元素无序,并且都会以某种规则保证存入的元素不出现重复。
Set集合有多个子类,这里我们介绍其中的java.util.HashSet、java.util.LinkedHashSet这两个集合。
java.util.set接extends collection接口set接口的特点:
1.不允许存储重复的元素
2.没有索引,没有带索引的方法,也不能使用普通的for循环遍历java.utiL.Hashset集合implements set接口
Hashset特点:
1.不允许存储重复的元素
2.没有索引,没有带索引的方法,也不能使用普通的for循环遍历
3.是一个无序的集合,存储元素和取出元素的顺序有可能不一致4.底层是一个哈希表结构(查询的速度非常的快)
public static void main(String[] args) { Set<Integer> set = new HashSet<>();//使用add方法往集合中添加元素 set.add(1); set.add(3); set.add(2); set.add(1); //使用迭代器遍历set集合 Iterator<Integer> it = set.iterator(); while (it.hasNext()) { Integer n = it.next(); System.out.println(n); //使用增强for遍历set集合 System.out.println(" -----------"); for (Integer i : set) { System.out.println(i); } } }
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号