Google Guava工具集简介

举报
zwy 发表于 2020/07/28 21:43:29 2020/07/28
【摘要】 /** * Google Guava工具集简介 * * Guava工程包含了若干被Google的Java项目广泛依赖的核心库, * 例如:集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O等等 * * 所有这些工具每天都在被Google的工程师应用在产品服务中。 * * * * Doug Lea 并发包的创建者 * * ...
/**
	 * Google Guava工具集简介
	 * 
	 *     Guava工程包含了若干被Google的Java项目广泛依赖的核心库,
	 *  例如:集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O等等
	 *  
	 *    所有这些工具每天都在被Google的工程师应用在产品服务中。
	 * 
	 * 
	 * 
	 * Doug Lea    并发包的创建者
	 * 
	 * "Null 真糟糕"
	 *      ---Doug Lea
	 *      
	 *      
	 *  大多数情况下,使用null表明的是某种确实情况
	 *  
	 *     Guava引入Optional<T>表明可能为null的T类型引用。
	 *  Optional实例可能包含非null的引用(引用存在),也可能什么
	 *        也不包括(引用缺失)
	 *  
	 *  
	 *  正是受到Guava的启发,Java8将Optional类作为
	 *一个新特性引入Java8类库。
	 *  
	 *  
	 * 
	 * 
	 * 
	 */
/*
 * 学习Java8中的Optional使用方法
 * @author Allen17805272076
 *
 */
public class OptionalTest {
	public static void main(String[] args) throws Throwable {
		/**
		 * 三种创建Optional对象方式
		 */
		
		//1、创建空的Optional对象
		Optional.empty();
		//2、使用非null只创建Optional对象
		Optional.of("www");
		//3、使用任意值创建Optional对象
		Optional optional=Optional.ofNullable("allen");
		
		/**
		 * 判断是否引用缺失的方法(不建议使用)
		 */
		
		optional.isPresent();
		/**
		 * 当Optional引用存在时执行
		 * 类似的方法:
		 *   map  filter  flatMap
		 */
		
		optional.ifPresent(System.out::println);
		
		/**
		 * 当Optional引用缺失时执行的方法
		 */
		
		optional.orElse("引用缺失");
		optional.orElseGet(()->{
			//自定义引用缺失时的返回值
			return "hello world";
			
		});
		
		optional.orElseThrow(()->{
			
			
			throw new RuntimeException("引用缺失异常");
			
		});
		
		
		
		
		
		
		
		
	}


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。