0
点赞
收藏
分享

微信扫一扫

day07-04-optional


optional

package day07.java8;

import com.google.common.collect.Lists;
import org.apache.commons.lang3.RandomStringUtils;

import java.util.List;
import java.util.Optional;
import java.util.function.Supplier;
/*
optional 优雅的处理null
*/


public class Demo03 {
public static void main(String[] args) {
Integer abc = getString("abc").orElse(0);
System.out.println("string1 = " + abc);

List<String> list = Lists.newArrayList("aa","abc","dgf","agvbd");
long count = list.stream().filter(x -> x.length() > 2).count();


// list.stream().filter(x->x.length()>1).forEach(System.out::println);

Optional<String> optional = list.stream()
.filter(x -> x.length() > 6)
.findFirst();
if(optional.isPresent()){
System.out.println(optional.get());
}
String string=optional.orElse("fuck");//optional 如果没有值,提供默认值
System.out.println(string);

// String s = optional.orElseGet(new Supplier<String>() {
// @Override
// public String get() {
// return "fuck you";
// }
// });
String s =optional.orElseGet(()-> RandomStringUtils.randomAlphanumeric(8));
System.out.println("s = ========================" );

}
public static Optional<Integer> getString(String str){
if(str==null){
return Optional.empty();
}
Integer length = str.length();
return Optional.of(length);
}

}

举报

相关推荐

2021-04-07

Day07

python day 07

day04

Day04

day07_configparser

Java Day07

0 条评论