java 四个点是什么特殊运算符?

例如 Collectors.toCollection(TreeSet::new)

java中的条件运算符即三目运算符,它是一个特殊的运算符,其语法形式如下:
布尔表达式?表达式1:表达式2
运算过程:如果布尔表达式的值为true,就返回表达式1的值,否则返回表达式2的值,例如:
int sum=90;
String str=sum<100 ? "失败" : "成功";
等价于下列代码:
String str=null;
if(num<100){
str="失败";
}else{
str="成功";
}
三目运算符和if……else语句相比,前者使程序代码更加简洁。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-12-30

Java双冒号(::)

    该运算符在Java 8中被用作方法引用(method reference),方法引用是与lambda表达式相关的一个重要特性。它提供了一种不执行方法的方法。为此,方法引用需要由兼容的函数接口组成的目标类型上下文。

大致意思是,使用lambda表达式会创建匿名方法, 但有时候需要使用一个lambda表达式只调用一个已经存在的方法(不做其它), 所以这才有了方法引用!

以下是Java 8中方法引用的一些语法:

    静态方法引用(static method)语法:classname::methodname 例如:Person::getAge

    对象的实例方法引用语法:instancename::methodname 例如:System.out::println

    对象的超类方法引用语法: super::methodname

    类构造器引用语法: classname::new 例如:ArrayList::new

    数组构造器引用语法: typename[]::new 例如: String[]:new

本回答被提问者和网友采纳
第2个回答  2021-12-30
就是一般的运算方法而已。
第3个回答  2022-06-18
午后,大风,带女儿阿尔姗娜去住处附近的“森林”。这是我偶然间发现的一片居于呼和浩特市区的清静之地,属于林业局的树木繁育中心,但对外免费开放。林区面积很大,慢慢逛完每一片树林,需要两三个小时。树木茂盛粗壮,一看即知,此片林区已有很多年的历史。遍地都是漂亮的松球,野草四处蔓延,不知名的鸟儿在枝头雀跃啁啾。因林区已形成良好的自然生态,树木可以独立生长,无需人工浇灌,于是过去修好的水泥沟渠就废弃掉了,成为老旧却别致的风景,人行走其中,恍若回到上世纪80年代的乡下。
第4个回答  2021-12-31
java中的条件运算符即三目运算符,它是一个特殊的运算符,其语法形式如下:
布尔表达式?表达式1:表达式2
运算过程:如果布尔表达式的值为true,就返回表达式1的值,否则返回表达式2的值,例如:
int sum=90;
String str=sum<100 ? "失败" : "成功";
等价于下列代码:
String str=null;
if(num<100){
str="失败";
}else{
str="成功";
}
三目运算符和if……else语句相比,前者使程序代码更加简洁。
相似回答