❶ 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);
}
}
}