您当前的位置: 首页 >  Java

wespten

暂无认证

  • 1浏览

    0关注

    899博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

深入学习java源码之Objects.deepEquals()与Objects.isNull()

wespten 发布时间:2019-01-01 16:12:07 ,浏览量:1

深入学习java源码之Objects.deepEquals()与Objects.nonNull()

不定长度参数

如果一个方法的参数定为不定参数的话,这个参数可以根据参数个数动态生成一个数组,然后传入方法执行。  不过,不定参数有两个规定:第一,方法的参数列表中最多只有一个不定长度的参数;第二,就是不定长度的数组的位置必须是最后一个参数。不然不能通过编译。 

    public static void main(String[] args) {  
        test("aaa");  
        test("aaa", "bbb");  
        test("aaa", "bbb", "ccc");  
    }  

    public static void test(String arg, String... args) {  
        System.out.println(arg);  
        System.out.println("----------------");  
        for (String s : args) {  
            System.out.println(s);  
        }  
    } 

 

supplier函数式接口

supplier也是是用来创建对象的,但是不同于传统的创建对象语法:new,看下面代码

public class TestSupplier {
	private int age;
	
	TestSupplier(){
		System.out.println(age);
	}
	public static void main(String[] args) {
		//创建Supplier容器,声明为TestSupplier类型,此时并不会调用对象的构造方法,即不会创建对象
		Supplier sup= TestSupplier::new;
		System.out.println("--------");
		//调用get()方法,此时会调用对象的构造方法,即获得到真正对象
		sup.get();
		//每次get都会调用构造方法,即获取的对象不同
		sup.get();
	}

--------
0
0

Supplier sup= TestSupplier::new;每次调用get()方法时才创建对象,且返回的对象不一样

 

 

 

Modifier and TypeMethod and Descriptionstatic intcompare(T a, T b, Comparator
关注
打赏
1665965058
查看更多评论
0.0521s