❶ java 关于set集合遍历的问题。我打印不出学生信息怎么办
set集合遍历打印不出学生信息,说明方法错误。
正确对 set 遍历,即可实现打印,具体方法如下:
1、迭代遍历:
Set<String> set = new HashSet<String>();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String str = it.next();
System.out.println(str);
}
2、for循环遍历:
for (String str : set) {
System.out.println(str);
}
优点还体现在泛型 假如 set中存放的是Object 。
Set<Object> set = new HashSet<Object>();
for循环遍历:
for (Object obj: set) {
if(obj instanceof Integer){
int aa= (Integer)obj;
}else if(obj instanceof String){
String aa = (String)obj
}
........
}
❷ Java中Set集合怎样用for遍历
增强型的for循环 和普通for循环一样
增强型的for循环 优点主要体现在集合中,随便举个例子
比如对 set 的遍历
一般是迭代遍历:
Set<String> set = new HashSet<String>();
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String str = it.next();
System.out.println(str);
}
for循环遍历:
for (String str : set) {
System.out.println(str);
}
是不是简单些?
优点还体现在泛型 假如 set中存放的是Object
Set<Object> set = new HashSet<Object>();
for循环遍历:
for (Object obj: set) {
if(obj instanceof Integer){
int aa= (Integer)obj;
}else if(obj instanceof String){
String aa = (String)obj
}
........
}
唯一的缺点就是 在遍历 集合过程中,不能对集合本身进行操作
for (String str : set) {
set.remove(str);//错误!
}
❸ Java中Set集合怎样用for遍历
//集合,基本都用iterator遍历。
//假设有个treeSet
TreeSetts=newTreeSet();
ts.add("dd");
Iteratorit=ts.iterator();
while(it.hasNext()){
System.out.print(it.next());
}
❹ java 语言里 遍历 collection 的方式 是怎样
java 语言里 遍历 collection 的方式:
方法一:使用迭代器进行遍历
Collection<String>c=丛困newHashSet<String>();
c.add("java");
c.add("cpp");
c.add("php");
c.add("c#");
c.add("objective-c");
Iterator<String>it=c.iterator();
while(it.hasNext()){
银弊String渗搏念str=it.next();
System.out.println(str);
}
方法二:使用for进行遍历
Collection<String>c=newHashSet<String>();
c.add("java");
c.add("cpp");
c.add("php");
c.add("c#");
c.add("objective-c");
for(Stringstr:c){
System.out.print(str.toUpperCase()+"");
}
❺ java iterator循环遍历集合(比如HashSet)的原理
如果你用的是eclipse,按住ctrl键,鼠标左键点next()方法就能看到了,然后关联JDK源码就可以了
❻ Java编程题: 编写一个Student类,包含name和age属性,提供有参构造方法
//*********************Student
import java.util.Objects;
public class Student {
public String name;
public int age;
Student(){}
Student(String name,int age){
this.name=name;
this.age=age;
}
public String toString(){//重写toString()
return "name: "+name+" age: "+age;
}
public boolean equals(Object o) {//重写equals()
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);
}
public int hashCode() {//重写hashCode()
return Objects.hash(name)+age;
}
}
//********************StudentTest
import java.util.HashSet;
public class StudentTest {
public static void main(String[] args) {
HashSet<Student> hs=new HashSet<>();
Student s1=new Student("zs",19);//s1
Student s2=new Student("zs",19);//s2
Student s3=new Student("ls",19);//s3
hs.add(s1);//加入集合
hs.add(s2);//
hs.add(s3);//
//s1,s2,equals()返回true,s2不会加入集合
for(Student it:hs) {//遍历HasSet
System.out.println(it);
}
}
}