为了账号安全,请及时绑定邮箱和手机立即绑定

关于Set元素的重复问题,

package com.web.mooc.collection.coursestu;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;

/*
 * 学生类
 */
public class Student {
    public String id;
    public String name;
    public Set<Course> courses;
    
    public Student(String id, String name) {
    this.id = id;
    this.name = name;
    this.courses = new HashSet<Course>();
    }
    
    public static void main(String[] args) {
    Student st = new Student("1005", "小明");
    System.out.println("学生 " + st.id + " " + st.name + "选择的课程如下:");
    st.coursesSelected();
    }
    
    public void coursesSelected() {
    Course[] cr = { new Course("1", "离散数学"), new Course("2", "大学英语"),
        new Course("3", "Java基础") };
    Course cr1 = new Course("3", "Java基础");
    courses.addAll(Arrays.asList(cr));
    courses.addAll(Arrays.asList(cr));
    // 第二次添加"3", "Java基础"
    courses.add(cr1);
    // 第三次添加"3", "Java基础"
    courses.add(cr1);
    System.out.println("添加了课程");
    show(courses);
    }
    
    public void show(Set<Course> courses) {
    for (Course obj : courses) {
        System.out.println(obj.id + obj.name);
    }
    
    }
}

========================运行结果===================================

学生 1005 小明选择的课程如下:
添加了课程
3Java基础
1离散数学
2大学英语
3Java基础

Set中的元素重复指的是,是不能添加同一个对象的引用,还是不能添加相同内容的对象???


正在回答

1 回答

Set是存放的是对象的引用,没有重复对象

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于Set元素的重复问题,

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信