亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我的這個代碼輸出的三門選課結果的順序是永遠一定的。用的是set集,不應該是無序的嗎?

為什么我的這個代碼輸出的三門選課結果的順序是永遠一定的。用的是set集,不應該是無序的嗎?

Meng7y 2017-06-27 20:40:36
package miooc;import java.util.ArrayList;import java.util.Scanner;;/**?* 測試學生選課的類?* Meng7y?* 2017年6月27日 19:25:44?*/public class TestStudent { //《?》可以用List的引用類型和ArrayList類型的引用。有什么區別嗎 public ArrayList<Course> courses1; public TestStudent() { this.courses1 = new ArrayList<Course>(); Course cr = new Course("1", "java"); courses1.add(cr); Course cr1 = new Course("2", "c"); courses1.add(cr1); Course cr2 = new Course("3", "c++"); courses1.add(cr2); Course cr3 = new Course("4", "c#"); courses1.add(cr3); } public void IteratorCourse(){ System.out.println("有以下可選課程!"); for(Course cr:courses1){ System.out.println("課程"+cr.getId()+":"+cr.getName()); } } public void student(){ Student sd = new Student("1", "小明"); System.out.println("歡迎"+sd.getName()+"同學選課!"); System.out.println("請輸入要選擇的課程序號(請選擇三門課程?。?); @SuppressWarnings("resource") Scanner input = new Scanner(System.in); for(int i = 0; i < 3; i++){ System.out.println("請輸入課程的序號!"); String id = input.nextLine(); for(Course cr:courses1){ if(cr.getId().equals(id)){ sd.courses.add(cr); } } } System.out.println("選擇的是如下的三門課程:"); for(Course course:sd.courses){ System.out.println(course.getId()+":"+course.getName()); } } public static void main(String[] args) { // TODO Auto-generated method stub TestStudent ts = new TestStudent(); ts.IteratorCourse(); ts.student(); }}
查看完整描述

3 回答

?
精慕門9254224

TA貢獻167條經驗 獲得超46個贊

我想知道你從哪里看出來你用的是set ?

查看完整回答
1 反對 回復 2017-06-28
  • Meng7y
    Meng7y
    public void student(){ Student sd = new Student("1", "小明"); System.out.println("歡迎"+sd.getName()+"同學選課!"); System.out.println("請輸入要選擇的課程序號(請選擇三門課程!)"); @SuppressWarnings("resource") Scanner input = new Scanner(System.in); for(int i = 0; i < 3; i++){ System.out.println("請輸入課程的序號!"); String id = input.nextLine(); for(Course cr:courses1){ if(cr.getId().equals(id)){ ****這里是一個set類型的集合***** sd.courses.add(cr); } } }
  • Meng7y
    Meng7y
    package miooc; import java.util.HashSet; import java.util.Set; /** * 選課的學生類 * Meng7y * 2017年6月27日 19:20:57 */ public class Student { private String id; private String name; public Set<Course> courses; public Student(String id, String name) { this.id = id; this.name = name; courses = new HashSet<Course>(); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 這是另一個類,上面的sd.courses.add添加到set類型的集合里面。不知道對不對
?
磁單極

TA貢獻22條經驗 獲得超19個贊

雖然是無序的,但是也是通過hash算法得出,存放的位置,你這只是存放的三個元素,而且測試次數較少,可以多存幾個元素,多測試幾次試一試

查看完整回答
反對 回復 2017-06-27
  • 3 回答
  • 0 關注
  • 1802 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號