java-API之集合7——Set接口
Set结构数据的特点
- 集合中的数据无序
- 一个不包含重复元素的 collection。
- 最多包含一个 null 元素。
可参考:java-API之集合2
常用方法
该类型的集合的方法都是继承于父接口Collection的方法,可参考:java-API之集合3——Collection接口
测试
1 public class Test2_Set { 2 3 public static void main(String[] args) { 4 // 1、创建对象 5 Set<String> set = new HashSet<>(); 6 // 2、常用方法 7 set.add("Jane"); // 如果此 set 中尚未包含指定元素,则添加指定元素。 8 set.add("Rose"); 9 set.add("NBA"); 10 System.out.println(set); // 没有顺序 11 set.add("Rose"); 12 System.out.println(set); //不允许有重复元素 13 set.add(null); 14 System.out.println(set); // [null, Rose, NBA, Jane] 15 16 // set.clear();// 从此 set 中移除所有元素。 17 System.out.println(set.contains("Rose")); // true 如果此 set 包含指定元素,则返回 true。 18 System.out.println(set.equals("Rose")); // false 该集合与指定对象是否相同 19 System.out.println(set.hashCode()); // 4931530 哈希值 20 System.out.println(set.isEmpty()); // false 如果此 set 不包含任何元素,则返回 true。 21 System.out.println(set.remove("Rose")); // true 22 System.out.println(set.size()); // 3 23 System.out.println(Arrays.toString(set.toArray())); // [null, NBA, Jane] 24 25 26 // 集合间的操作 27 Set<String> set2 = new HashSet<>(); 28 set2.add("100"); 29 set2.add("200"); 30 set2.add("300"); 31 System.out.println(set.addAll(set2)); //true 将集合2中的所有元素添加到set中 32 System.out.println(set); // [null, 100, 200, 300, NBA, Jane] 33 System.out.println(set.containsAll(set2)); // true set集合中是否包含集合set2中所有的元素 34 // System.out.println(set.removeAll(set2)); // true 35 // System.out.println(set); // [null, NBA, Jane] 36 System.out.println(set.retainAll(set2)); // true 37 System.out.println(set); // [100, 200, 300] 38 39 Iterator<String> it = set.iterator(); 40 while(it.hasNext()) { // hasNext 判断是否还有下一个元素 41 // 获取当前元素的下一个元素 42 System.out.println(it.next()); //100 200 300 43 } 44 } 45 46 }

浙公网安备 33010602011771号