java中集合类中Collection接口中的Set接口的常用方法熟悉

简介: 1:Set集合由Set接口和Set接口的实现类组成,Set接口继承了Collection接口,因为包含Collection接口的所有方法。 2:由于Set接口中不允许存在重复值,因此可以使用Set集合中addAll()方法,将Collection集合添加到Set集合中并除掉重复值 3:案例要求,创建一个List集合对象,并往List集合中添加元素。再创建一个Set集合,利用addAll()
1:Set集合由Set接口和Set接口的实现类组成,Set接口继承了Collection接口,因为包含Collection接口的所有方法。

2:由于Set接口中不允许存在重复值,因此可以使用Set集合中addAll()方法,将Collection集合添加到Set集合中并除掉重复值

3:案例要求,创建一个List集合对象,并往List集合中添加元素。再创建一个Set集合,利用addAll()方法将List集合对象存入到Set集合中并除掉重复值,最后打印Set集合中的元素

 

 1 package com.ning;
 2 
 3 import java.util.*;
 4 
 5 public class Demo02 {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9         List<String> list=new ArrayList<String>();//创建List集合
10         list.add("b");//将List集合中添加元素
11         list.add("a");
12         list.add("c");
13         list.add("q");
14         list.add("c");
15         Set<String> set=new HashSet<String>();//创建List集合对象
16         set.addAll(list);//将List集合添加到Set集合中
17         set.add("111");
18         set.remove("111");
19         Iterator<String> it=set.iterator();//创建Set迭代器
20         System.out.println("集合中的元素是:");
21         while(it.hasNext()){
22             System.out.print(it.next()+"\t");
23         }
24         
25         
26         
27     }
28 
29 }

 

 


 

1:要使用Set集合,通常情况下需要声明为Set类型,然后通过Set接口类来实例化。Set接口的实现类常用HashSet和TreeSet类。

Set<String> set=new HashSet<String>();

Set<String> set=new TreeSet<String>();

2:由于集合中对象是无序的,遍历Set集合的结果与插入Set集合的顺序并不相同

 1 package com.ning;
 2 
 3 public class People {
 4     
 5     private String name;
 6     private long id_card;
 7     public People(String name,long id_card){
 8         this.name=name;
 9         this.id_card=id_card;
10     }
11     
12     public void setId_card(long id_card){
13         this.id_card=id_card;
14     }
15     public long getId_card(){
16         return id_card;
17     } 
18     
19     public void setName(String name){
20         this.name=name;
21     }
22     public String getName(){
23         return name;
24     }
25     
26 }
 1 package com.ning;
 2 
 3 import java.util.*;
 4 
 5 public class Demo05 {
 6 
 7     public static void main(String[] args) {
 8         Set<People> set=new HashSet<People>();//创建Set集合对象
 9         set.add(new People("小别",10010));//向集合中添加元素
10         set.add(new People("小李",10011));
11         set.add(new People("小赵",10012));
12         Iterator<People> it=set.iterator();//创建集合迭代器
13         System.out.println("集合中的元素是:");
14         while(it.hasNext()){
15             People p=it.next();
16             System.out.println(p.getName()+"  "+p.getId_card());
17         }
18     }
19 
20 }

 

目录
相关文章
|
19天前
|
JSON Java Apache
非常实用的Http应用框架,杜绝Java Http 接口对接繁琐编程
UniHttp 是一个声明式的 HTTP 接口对接框架,帮助开发者快速对接第三方 HTTP 接口。通过 @HttpApi 注解定义接口,使用 @GetHttpInterface 和 @PostHttpInterface 等注解配置请求方法和参数。支持自定义代理逻辑、全局请求参数、错误处理和连接池配置,提高代码的内聚性和可读性。
|
10天前
|
Java
在Java中,接口之间可以继承吗?
接口继承是一种重要的机制,它允许一个接口从另一个或多个接口继承方法和常量。
36 1
|
19天前
|
Java
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式。本文介绍了 Streams 的基本概念和使用方法,包括创建 Streams、中间操作和终端操作,并通过多个案例详细解析了过滤、映射、归并、排序、分组和并行处理等操作,帮助读者更好地理解和掌握这一重要特性。
25 2
|
19天前
|
安全 Java
Java多线程集合类
本文介绍了Java中线程安全的问题及解决方案。通过示例代码展示了使用`CopyOnWriteArrayList`、`CopyOnWriteArraySet`和`ConcurrentHashMap`来解决多线程环境下集合操作的线程安全问题。这些类通过不同的机制确保了线程安全,提高了并发性能。
|
20天前
|
Java
java线程接口
Thread的构造方法创建对象的时候传入了Runnable接口的对象 ,Runnable接口对象重写run方法相当于指定线程任务,创建线程的时候绑定了该线程对象要干的任务。 Runnable的对象称之为:线程任务对象 不是线程对象 必须要交给Thread线程对象。 通过Thread的构造方法, 就可以把任务对象Runnable,绑定到Thread对象中, 将来执行start方法,就会自动执行Runable实现类对象中的run里面的内容。
36 1
|
23天前
|
存储 Java 开发者
Java中的集合框架深入解析
【10月更文挑战第32天】本文旨在为读者揭开Java集合框架的神秘面纱,通过深入浅出的方式介绍其内部结构与运作机制。我们将从集合框架的设计哲学出发,探讨其如何影响我们的编程实践,并配以代码示例,展示如何在真实场景中应用这些知识。无论你是Java新手还是资深开发者,这篇文章都将为你提供新的视角和实用技巧。
22 0
|
4月前
|
存储 安全 Java
【Java集合类面试二十五】、有哪些线程安全的List?
线程安全的List包括Vector、Collections.SynchronizedList和CopyOnWriteArrayList,其中CopyOnWriteArrayList通过复制底层数组实现写操作,提供了最优的线程安全性能。
|
7月前
|
安全 Java 开发者
【JAVA】哪些集合类是线程安全的
【JAVA】哪些集合类是线程安全的
|
4月前
|
安全 Java
【Java集合类面试十三】、HashMap如何实现线程安全?
实现HashMap线程安全的方法包括使用Hashtable类、ConcurrentHashMap,或通过Collections工具类将HashMap包装成线程安全的Map。
|
4月前
|
安全 算法 Java
【Java集合类面试二】、 Java中的容器,线程安全和线程不安全的分别有哪些?
这篇文章讨论了Java集合类的线程安全性,列举了线程不安全的集合类(如HashSet、ArrayList、HashMap)和线程安全的集合类(如Vector、Hashtable),同时介绍了Java 5之后提供的java.util.concurrent包中的高效并发集合类,如ConcurrentHashMap和CopyOnWriteArrayList。
【Java集合类面试二】、 Java中的容器,线程安全和线程不安全的分别有哪些?