• 静态导入和可变参数,Collections集合工具类,集合嵌套


    1 静态导入

    在导包的过程中我们可以直接导入静态部分,这样某个类的静态成员就可以直接使用了。在源码中经常会出现静态导入。

    静态导入格式:

    import static XXX.YYY;   导入后YYY可直接使用。 

    2 可变参数

    在JDK1.5之后,如果我们定义一个方法需要接受多个参数,并且多个参数类型一致,我们可以对其简化成如下格式:

    修饰符 返回值类型 方法名(参数类型... 形参名){  }

    其实这个书写完全等价与

    修饰符 返回值类型 方法名(参数类型[] 形参名){  }

    只是后面这种定义,在调用时必须传递数组,而前者可以直接传递数据即可。

    public class Demo02 {
        public static void main(String[] args) {
            System.out.println(add(1,2));
            System.out.println(add(1,2,3,4));
        }
        //写一个求和的方法,参数都是整形
        //(可变参数)
        //注意:只能有一个可变参数,放在最后面
        public static int add(int...a){
            int sum=0;
            for(int i:a){
                sum+=i;
            }
            return sum;
        }
    }

    3 Collections集合工具类

    public class Demo03 {
        public static void main(String[] args) {
            List<Integer>list=new ArrayList<Integer>();
            list.add(55);
            list.add(1);
            list.add(22);
            list.add(23);
            list.add(9);
            //对集合进行排序
            Collections.sort(list);
            for(int i:list){
                System.out.println(i);
            }
            //对集合元素随机打乱
            Collections.shuffle(list);
            for(int i:list){
                System.out.println(i);
            }
        }
    }

    4 集合嵌套练习

    public class Demo06 {
        public static void main(String[] args) {
            HashMap<String,HashMap<Person,String>>map=new HashMap<String,HashMap<Person,String>>();
            HashMap<Person,String>m1=new HashMap<Person,String>();
            HashMap<Person,String>m2=new HashMap<Person,String>();
            m1.put(new Person("张三",22), "java1203班");
            m1.put(new Person("李四",22), "java1203班");
            m2.put(new Person("王五",22), "java1204班");
            m2.put(new Person("李三",22), "java1204班");
            map.put("清华", m1);
            map.put("北大", m2);
            //keySet+for
            //获取所有学校名称
            Set<String>schools=map.keySet();
            for(String sc:schools){
                HashMap<Person,String> classes=map.get(sc);
                Set<Person>ps=classes.keySet();
                for(Person p:ps){
                    String classname=classes.get(p);
                    System.out.println("学校名称为:"+sc+",班级名称为:"+classname+",学生姓名为"+p.getName()+
                            "学生年龄为:"+p.getAge());
                }
            }
        }
    }
  • 相关阅读:
    linux运维、架构之路-Kubernetes离线、二进制部署集群
    linux运维、架构之路-Kubernetes集群部署
    创建SpringMVC项目过程
    Spring AOP使用方式
    Java动态代理
    Java工厂模式解耦 —— 理解Spring IOC
    Neural Turing Machine
    小米路由器mini刷锐捷
    目前深度学习开源数据集整理
    Spring编译后没有xml配置文件解决方法
  • 原文地址:https://www.cnblogs.com/quanjunkang/p/10646901.html
Copyright © 2020-2023  润新知