Opcional y nueva fecha y hora de las nuevas funciones de JDK8

Opcional

a) Métodos comunes de la clase contenedora opcional

Optional.of (T t) crea una instancia opcional

Optional.empty () crea una instancia opcional vacía

Optional.ofNullable (T t) Si t no es nulo, cree una instancia opcional; de lo contrario, cree una instancia vacía

IsPresent () Determina si hay un valor

OElse (T t) Si el objeto que llama contiene un valor, devuelve ese valor; de lo contrario, devuelve t

OrElseGet (Proveedor s) Si el objeto que llama contiene un valor, devuelve el valor; de lo contrario, devuelve el valor obtenido por s (el valor de cualquier tipo de objeto que la interfaz de suministro quiera devolver está bien, solo salga nuevo)


Map (Función f) Si hay un valor para procesarlo, y devuelve el Opcional procesado, de lo contrario devuelve Opcional.empty ()

FlatMap (mapeador de funciones) es similar a map y requiereEl valor devuelto debe ser opcional.

@Test
public void test1() {
	Optional<Employee> ofNullable = Optional.ofNullable(new Employee("张三三",23,12345.00));
	Optional<String> map = ofNullable.map((e) -> e.getName());
	System.out.println(map.get());
	
	Optional<String> flatMap = ofNullable.flatMap((e) ->Optional.of(e.getName()));
	System.out.println(flatMap.get());
}

Nueva API de fecha y hora

Problemas de fecha anterior

1, LocalDate LocalTime LocalDateTime (lectura humana)

2. Instantáneo: Marca de tiempo (en el primer año de Unix: el valor de milisegundos entre las 00:00:00 del 1 de enero de 1970 y una hora determinada) (lectura por computadora)

3. a) Duración: calcula el intervalo entre dos "tiempos"

B) Periodo: calcula el intervalo entre dos "fechas"

4. Corrector de tiempo: TemporalAdjuster (interfaz) Clase de herramienta TemporalAdjusters

5. DateTimeFormatter: formato de hora / fecha

6 、 ZonedDate 、 ZoneTime 、 ZoneDateTime : 时 区

	public static void main(String[] args) {
        DateTimeFormatter isoDate = DateTimeFormatter.ISO_DATE;
        LocalDateTime now = LocalDateTime.now();
        String format = isoDate.format(now);
        System.out.println(format);
	//	System.out.println(ZoneId.getAvailableZoneIds()); 
		LocalDate now2 = LocalDate.now(ZoneId.of("America/Cuiaba"));
		System.out.println("zoneId-----------------"+now2);
		LocalDateTime now3 = LocalDateTime.now(ZoneId.of("America/Cuiaba"));
		ZonedDateTime atZone = now3.atZone(ZoneId.of("Asia/Shanghai"));
		System.out.println(atZone);
		}

Supongo que te gusta

Origin blog.csdn.net/weixin_45496190/article/details/106975218
Recomendado
Clasificación