首页 > 代码库 > java集合框架02

java集合框架02

public class ListTest {    public static void main(String[] args) {        //创建几个新闻对象        News news1=new  News(1, "新闻1");        News news2=new  News(2, "新闻2");        News news3=new  News(3, "新闻3");         //创建一个List集合        List list=new ArrayList(); //现在 集合中存放的Object         list.add(1);         list.add("abc");         list.add(news1);        //遍历集合         for (Object object : list) {            System.out.println(object);        }                           System.out.println("**************************");        /*         * 现在 我只想存放 News 新闻          * 泛型集合         * 在创建集合的时候,就已经规定了 集合中允许存放的类型!         * 如果后续进行新增操作时候,插入了类型不一致的数据,会编译报错!         */        List<News>  news=new ArrayList<News>();  //new ArrayList();         //news.add(1);  编译报错        //news.add(null);  可以存放 Null                 news.add(news1);                 news.add(news2);                 news.add(news3);        System.out.println("集合的大小:"+news.size());  //4        //遍历        for (News n : news) {            System.out.println(n.getTitle());  //不需要强制类型转化 直接输出        }        System.out.println("***********************");                        //List <int> i=new ArrayList();  不能使用基本数据类型        List<Integer> i=new  ArrayList();  //对应类型的封装类        List<String> s=new  ArrayList();  //只能存放String类型            }}

Map的泛型集合

创建Student实体类

 

public class Student {    private  Integer  studentNo;  //学生的编号  是唯一的    private  String  name;    private  Integer  age;    private  String  sex;        @Override    public String toString() {        return "Student [studentNo=" + studentNo + ", name=" + name + ", age="                + age + ", sex=" + sex + "]";    }    public Student() {        super();    }    public Student(Integer studentNo, String name, Integer age, String sex) {        super();        this.studentNo = studentNo;        this.name = name;        this.age = age;        this.sex = sex;    }        public Integer getStudentNo() {        return studentNo;    }    public void setStudentNo(Integer studentNo) {        this.studentNo = studentNo;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getSex() {        return sex;    }    public void setSex(String sex) {        this.sex = sex;    }        public Integer getAge() {        return age;    }    public void setAge(Integer age) {        this.age = age;    }}

创建测试类

public class MapTest {    public static void main(String[] args) {        /*         * 创建一个Map的泛型集合         * 之前         * Map   map=new HashMap();         * key和value全都是 Object类型         */        Map   m=new HashMap();        m.put(1, 2);        m.put("1","2");        m.put(1.0, 2.0);        System.out.println("map集合的大小:"+m.size());  //3        System.out.println("************************************");                        //创建几个新闻对象        Student stu1=new Student(1, "奥黑驴1", 1000, "女");        Student stu2=new Student(2, "奥黑驴2", 10000, "女");        Student stu3=new Student(3, "奥黑驴3", 1000, "女");        //泛型集合   key只能是Integer        Map<Integer,Student> map=new HashMap<Integer, Student>();        //map.put(1, 1); 默认装箱操作  int基本数据类型转换成Interge封装类        map.put(stu1.getStudentNo(), stu1);        map.put(stu2.getStudentNo(), stu2);        map.put(stu3.getStudentNo(), stu3);        //遍历之前获取keySet        Set<Integer> keySet = map.keySet();        //01. for加强        for (Integer key : keySet) {            //根据key取得对应的Student对象            System.out.println(map.get(key));        }        System.out.println("***************************");        //02. iterator        Iterator<Integer> it = keySet.iterator();        while (it.hasNext()) {            /*Integer key=it.next();            map.get(key);*/            System.out.println(map.get(it.next()));        }        System.out.println("***************************");        /*         * 03. entrySet() 同时可以获取 key和value          *    之前都是先获取key 之后拿key取得value         */        Iterator iterator = map.entrySet().iterator();        while (iterator.hasNext()) {            Entry entry = (Entry) iterator.next();            System.out.println("map的key===>"+entry.getKey());            System.out.println("map的value=http://www.mamicode.com/==>"+entry.getValue());        }    }}

 

java集合框架02