摘要:工具類基本概念類的使用對(duì)象創(chuàng)建常用方法基本概念類是一個(gè)可以為的容器對(duì)象可以保存指定類型的值也可以只保存要么有值要么為中提供很多方法來(lái)避免顯式的進(jìn)行空值檢查如果值存在則調(diào)用方法會(huì)返回調(diào)用方法就會(huì)返回這個(gè)對(duì)象類是一個(gè)沒(méi)有子類的
Optional.of(T t);
Optional.ofNullable();
Optional.empty();
Optional<Object> optional = Optional.empty();// falseboolean optionalPresent = optional.isPresent();
Optional<Object> optional = Optional.empty();// NoSuchElementException: No value presentObject o = optional.get();
String message = optional.orElse("Optional對(duì)象的值為空!");
String value = optional.orElseGet(() -> "Optional對(duì)象的值為空!");
String value = optional.orElseThrow(() -> new RunTimeExeception("Optional對(duì)象中的值不存在!"));
Optional<String> map = optional.map(p -> p.getName());
// map()方法Optional<String> map = optional.map(p -> p.getName());// flatMap()方法Optional<String> flatMap = optional.flatMap(p -> Optional.of(p.getName()));
String filter = optional.filter(s -> s.length > 0).orElse("Optional對(duì)象中的值不存在!");
optional.ifPresent(System.out :: println);
optional.ifPresentOrElse((str) -> System.out.println(str.toUpperCase()), () -> System.out.println("Optional對(duì)象中的值不存在!"));
boolean flag = optional.equals(obj);
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/124706.html
摘要:新特性總覽標(biāo)簽本文主要介紹的新特性,包括表達(dá)式方法引用流默認(rèn)方法組合式異步編程新的時(shí)間,等等各個(gè)方面。還有對(duì)應(yīng)的和類型的函數(shù)連接字符串廣義的歸約匯總起始值,映射方法,二元結(jié)合二元結(jié)合。使用并行流時(shí)要注意避免共享可變狀態(tài)。 Java8新特性總覽 標(biāo)簽: java [TOC] 本文主要介紹 Java 8 的新特性,包括 Lambda 表達(dá)式、方法引用、流(Stream API)、默認(rèn)方...
摘要:概述簡(jiǎn)介類是一個(gè)容器類,代表一個(gè)值存在或不存在,原來(lái)用表示一個(gè)值不存在,現(xiàn)在可以更好的表達(dá)這個(gè)概念,并且可以避免空指針異常。否則返回字符串長(zhǎng)度為與類似,要求返回值必須是字符串長(zhǎng)度為本文首發(fā)于凌風(fēng)博客新特性之類作者凌風(fēng) 1. 概述 1.1 簡(jiǎn)介 Optional 類(java.util.Optional)是一個(gè)容器類,代表一個(gè)值存在或不存在,原來(lái)用 null 表示一個(gè)值不存在,現(xiàn)在 Op...
摘要:但返回的是一個(gè)類型的對(duì)象,這意味著操作的結(jié)果是一個(gè)類型的對(duì)象。反之,如果對(duì)象存在,這次調(diào)用就會(huì)將其作為函數(shù)的輸入,并按照與方法的約定返回一個(gè)對(duì)象。 一、Optional 類入門 Java 8中引入了一個(gè)新的類java.util.Optional。變量存在時(shí),Optional類只是對(duì)類簡(jiǎn)單封裝。變量不存在時(shí),缺失的值會(huì)被建模成一個(gè)空的Optional對(duì)象,由方法Optional.empt...
摘要:是第一批在堆上分配記錄的類型語(yǔ)言之一。實(shí)際上,的這段話低估了過(guò)去五十年來(lái)數(shù)百萬(wàn)程序員為修復(fù)空引用所耗費(fèi)的代價(jià)。很明顯,這種方式不具備擴(kuò)展性,同時(shí)還犧牲了代碼的可讀性。是目前程序開(kāi)發(fā)中最典型的異常。完成這一任務(wù)有多種方法。 用Optional取代null 如果你作為Java程序員曾經(jīng)遭遇過(guò)NullPointerException,請(qǐng)舉起手。如果這是你最常遭遇的異常,請(qǐng)繼續(xù)舉手。非??上?,...
閱讀 2434·2021-11-24 09:39
閱讀 3123·2021-10-15 09:39
閱讀 3180·2021-07-26 23:38
閱讀 2369·2019-08-30 11:14
閱讀 3468·2019-08-29 16:39
閱讀 1767·2019-08-29 15:23
閱讀 869·2019-08-29 13:01
閱讀 2733·2019-08-29 12:29