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 }

 

目录
相关文章
|
5月前
|
存储 Java 索引
用Java语言实现一个自定义的ArrayList类
自定义MyArrayList类模拟Java ArrayList核心功能,支持泛型、动态扩容(1.5倍)、增删改查及越界检查,底层用Object数组实现,适合学习动态数组原理。
228 4
|
5月前
|
IDE JavaScript Java
在Java 11中,如何处理被弃用的类或接口?
在Java 11中,如何处理被弃用的类或接口?
296 5
|
5月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
281 1
|
5月前
|
Java Go 开发工具
【Java】(8)正则表达式的使用与常用类分享
正则表达式定义了字符串的模式。正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
402 1
|
Java
java中Set,Map,Stack一些简单用法
1 import java.util.Iterator; 2 import java.util.Stack; 3 import java.io.*; 4 import java.util.
745 0
|
5月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
300 1
|
6月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案
Java 数据库 Spring
265 0
|
6月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
453 16