zoukankan      html  css  js  c++  java
  • JDK5.0新特性1

    本章目标:

    1.静态导入
    2.自动装箱/拆箱
    3.for-each循环
    4.可变参数
    5.枚举

    1. 静态导入语句使用 import static 语句

    1 导入指定类的单个静态属性:                               
    2 import static java.lang.System.out
    3 导入指定类全部静态属性                                   
    4 import static java.lang.Math.*

    2.自动装箱与自动拆箱:

    • 自动装箱(autoboxing):把一个基本数据类型直接赋给对应的包装类变量, 或者赋给 Object 变量

    • 自动拆箱:把包装类对象直接赋给一个对应的基本类型变量

    3.代码展示:

    public static void main(String[] args) {
            Integer a1=100;
            Integer a2=100;
            System.out.println(a1==a2);
            System.out.println(a1.equals(a2));
    
            int b1=100;
            int b2=100;
            System.out.println(b1==b2);
    
            Integer c1=-127;
            Integer c2=-127;
            System.out.println(c1==c2);
            System.out.println(c1.equals(c2));
            // 在-128--127这个范围内直接赋值int数值,Integer不会new 对象;
    
            Integer d1=Integer.valueOf(100);
            Integer d2=Integer.valueOf(100);
            System.out.println(d1==d2);
        }

    运行结果展示:

    true
    true
    true
    true
    true
    true

    4.使用foreach循环遍历数组和集合元素时, 无须获得数组和集合长度, 无须根据索引来访问数组元素和集合元素,

    forearch 循环自动遍历数组和集合的每个元素

    for(type varName : array | collection) {                 
         //varName 自动迭代访问每一个元素                                                                     
    }
     public static void main(String[] args) {
            //增强型for循环,不是基于index下标去遍历的,可用Set来证明
            List list=new ArrayList();
            list.add("");
            list.add("");
            list.add("");
            for (int i=0;i<list.size();i++){
                System.out.println(list.get(i));
            }
    
            for (Object li:list) {
                System.out.println(li);
            }
    
            Set set=new HashSet();
            set.add("Tang");
            set.add("Ting");
            set.add("Yue");
    
            for (Object se:set) {
                System.out.println(se);
            }
        }

    5.若在定义方法时, 在最后一个形参的类型后增加三点(…), 则表明该形参可以接受多个参数值, 多个参数值被当成数组传入 可变形参只能处于形参列表的最后,

    所以一个方法最多只能有一个长度可变的形参

    public class Demo4 {
        public static void main(String[] args) {
            Demo4.fun("aa");
            Demo4.fun("bb",1);
            Demo4.fun("cc",1,2,3);
            int[] arr = new int[]{10,20,30};
            Demo4.fun("dd",arr);
    
        }
        public static  void fun(String s,int... x){
            System.out.println("___________");
            System.out.println(x.length);
            for (int i: x) {
                System.out.println(i);
    
            }

     

    心得:

    上苍真的很公平,命运在向你关闭一扇窗的同时,又为你打开了另一扇窗。世上的任何事是多面的,
    我们看到的只是其中的一个侧面,
    这个侧面让你痛苦,但痛苦往往可以转化。任何不幸,失败与损失,都有可能成为我们有利的因素。
  • 相关阅读:
    Python定时任务利器—Apscheduler
    Python命令行模块(sys.argv,argparse,click)
    Rust安装和环境配置
    DBF 文件 ORACLE 数据库恢复
    认识 Cargo-Rust构建工具和包管理器
    VS Code 搭建 Rust 开发环境
    如何按名称或PID查找一个进程?如何按端口号查找一个进程?如何查看一个进程的CPU和内存、文件句柄使用情况?如何查看CPU利用率高的TOP10进程清单?如何根据PID强制终止进程?
    String 字符串
    JVM初探之类文件结构
    隐藏Windows不常用设置项
  • 原文地址:https://www.cnblogs.com/www-tty-com/p/13567008.html
Copyright © 2011-2022 走看看