本文主要是介绍Java Set,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package 集合;
import java.util.*;
class Student {
String name;
int age;
public Student(String Name, int Age) {
name = Name;
age = Age;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return age == student.age && Objects.equals(name, student.name);
}
@Override
public int hashCode() {
return Objects.hash(name, age);
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
public class Set {
public static void main(String[] args) {
java.util.Set<String> set = new HashSet<>();
java.util.Set<String> st = new HashSet<>();
//初始化
Test01(set, st);
//单测试
Test02(set);
//集合与集合
Test03(set, st);
//自定义类测试
Test04();
//打印
System.out.println(set);
System.out.println(st);
}
private static void Test04() {
java.util.Set<Student> set = new HashSet<>();
Student s1 = new Student("QianL", 123);
Student s5 = new Student("QianL", 123);
Student s2 = new Student("QianL", 12);
set.add(s1);
set.add(s5);
set.add(s2);
System.out.println(set);
}
private static void Test03(java.util.Set<String> set, java.util.Set<String> st) {
//将指定集合中的所有元素添加到此集合
if (true) {
set.addAll(st);
}
//如果此集合包含所有指定集合的元素返回true
if (false) {
boolean b = set.containsAll(st);
if (b) {
System.out.println("set中包含st的所有元素");
} else {
System.out.println("set中不包含st的所有元素");
}
}
//从此集合中删除指定集合中包含的所有元素
if (false) {
boolean b = set.removeAll(st);
if (b) {
System.out.println("全部删除完毕!");
} else {
System.out.println("set没有st元素");
}
}
//仅保留该集合中包含在指定集合中的元素
if (false) {
boolean b = set.retainAll(st);
if (b) {
System.out.println("set保留st中的元素成功!!");
} else {
System.out.println("set没有st元素,集合被置空");
}
}
if (false) {
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String next = it.next();
System.out.print(next + " ");
}
System.out.println();
}
}
private static void Test02(java.util.Set<String> set) {
//从此集合中删除所有元素
//set.clear();
//如果此集合包含指定的元素,则返回 true 。
if (false) {
boolean b = set.contains("null");
if (b) {
System.out.println("null存在");
} else {
System.out.println("null不存在!");
}
}
//返回此集合的哈希码值。
if (false) {
int i = set.hashCode();
System.out.println("set对象的哈希码为:\t" + i);
}
//如果此集合不包含元素,则返回 true
if (false) {
boolean b = set.isEmpty();
if (b) {
System.out.println("set为空!");
} else {
System.out.println("set不为空!");
}
}
//如果存在,则从该集合中删除指定的元素
if (false) {
boolean b = set.remove("虎虎生威");
if (b) {
System.out.println("虎虎生威 删除成功!");
} else {
System.out.println("虎虎生威不存在!");
}
}
//返回此集合中的元素数
if (false) {
int size = set.size();
System.out.println("set的大小为:\t" + size);
}
//返回一个包含此集合中所有元素的数组
if (false) {
Object[] o = set.toArray();
System.out.println(Arrays.toString(o));
}
}
private static void Test01(java.util.Set<String> set, java.util.Set<String> st) {
set.add("牛气冲天");
set.add("虎虎生威");
set.add("牛气冲天");
set.add("null");
set.add("null");
set.add(null);
set.add(null);
st.add("王者荣耀");
st.add("英雄联盟");
st.add("和平精英");
st.add("地下城");
}
}
这篇关于Java Set的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!