java中怎么往集合类set里添加数据??

java中怎么往集合类set里添加数据??,第1张

两种向Set中添加元素的方法,第一种是使用add()方法,每次添加一个元素到set中,当集合中不存在相同元素时将添加到集合中,并返回true,当集合中存在元素时,返回false。代码如下:

Set<String>sets = new HashSet<>()

sets.add("String")

System.out.println(sets.add("Tree"))

System.out.println(sets.add("String"))

List<String>lists = new LinkedList<>()

lists.add("test")

lists.add("test")

lists.add("one")

System.out.println(sets.addAll(lists))

还有一个是向集合中批量添加元素的方法addAll(),这个方法的入参是Colletion。上述代码执行结果如下:

扩展知识

Set集合可以知道某物是否已近存在于集合中,不会存储重复的元素,注重独一无二的性质,用于存储无序(存入和取出的顺序不一定相同)元素,值不能重复。可以很好地作为排重时使用的数据结构,但要注意集合内部数据一般情况没有顺序。常用的set有HashSet和TreeSet。

TreeSet是JAVA中集合的一种,TreeSet 是一个有序的集合,它的作用是提供有序的Set集合。它继承于AbstractSet抽象类,实现了NavigableSet<E>,Cloneable,java.io.Serializable接口。一种基于TreeMap的NavigableSet实现,支持2种排序方式:自然排序 或者 根据创建TreeSet 时提供的 Comparator 进行排序。

下面的Test类祥睁就谨咐岁是一个集合类,它只能添加Student类型的对象,代码如下:

import java.util.Collection

import java.util.Iterator

public class Test implements Collection<Student>{

public static void main(String[] args){

Test t = new Test()

t.add(new Student())

}

@Override

public int size() {

// TODO Auto-generated method stub

return 0

}

@Override

public boolean isEmpty() {

// TODO Auto-generated method stub

return false

}

@Override

public boolean contains(Object o) {

// TODO Auto-generated method stub

return false

}

@Override

public Iterator<Student>iterator() {

// TODO Auto-generated method stub

return null

}

@Override

public Object[] toArray() {

// TODO Auto-generated method stub

return null

}

@Override

public <T>T[] toArray(T[] a) {

// TODO Auto-generated method stub

return null

}

@Override

public boolean add(Student e) {

// TODO Auto-generated method stub

return false

}

@Override

public boolean remove(Object o) {

// TODO Auto-generated method stub

return false

}

@Override

public boolean containsAll(Collection<?>c) {

// TODO Auto-generated method stub

return false

}

@Override

public boolean addAll(Collection<? extends Student>c) {

// TODO Auto-generated method stub

return false

}

@Override

public boolean removeAll(Collection<?>c) {

// TODO Auto-generated method stub

return false

}

@Override

public boolean retainAll(Collection<?>c) {

//简李 TODO Auto-generated method stub

return false

}

@Override

public void clear() {

// TODO Auto-generated method stub

}

}

class Student{

String stuId

String name

public Student(){

}

public String getStuId(){

return stuId

}

public void setStuId(String stuId){

this.stuId = stuId

}

public String getName(){

return name

}

public void setName(String name){

this.name = name

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11986651.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存