Perguntas com a marcação «java-8»

271
Usa para opcional

Tendo usado o Java 8 agora há mais de 6 meses, estou muito feliz com as novas alterações na API. Uma área em que ainda não estou confiante é quando usar Optional. Eu pareço variar entre querer usá-lo em qualquer lugar em que algo possa estar null, e em lugar nenhum. Parece haver muitas situações...

257
Ignorar duplicatas ao produzir mapa usando fluxos

Map<String, String> phoneBook = people.stream() .collect(toMap(Person::getName, Person::getAddress)); Recebo java.lang.IllegalStateException: Duplicate keyquando um elemento duplicado é encontrado. É possível ignorar essa exceção ao adicionar valores ao mapa? Quando houver duplicado, ele...

256
Qual é a diferença entre Instant e LocalDateTime?

Eu sei disso: O Instant é uma representação "técnica" de carimbo de data / hora (nanossegundos) para a computação. LocalDateTime é uma representação de data / relógio, incluindo fusos horários para humanos. Ainda no final, o IMO pode ser considerado como um tipo para a maioria dos casos de uso...

250
Calcular dias entre duas datas no Java 8

Eu sei que há muitas perguntas sobre SO sobre como obter, mas eu quero e exemplo usando a nova API do Java 8 Date. Eu também conheço a biblioteca JodaTime, mas quero uma maneira de trabalhar sem bibliotecas externas. A função precisa reclamar com estas restrições: Evitar erros a partir da data...

247
Removendo o Java 8 JDK do Mac

Então, instalei a versão beta do JDK 8 há algum tempo para ver alguns dos exemplos. Eu já tinha certeza de que agora é fácil mudar de versão. Fazendo algum desenvolvimento do Play com o IntelliJ. Por alguma razão, o IntelliJ está compilando com 8, mesmo que: Eu tenho o compilador definido em...

240
Usando o Java 8 opcional com Stream :: flatMap

A nova estrutura de fluxo do Java 8 e os amigos criam um código java muito conciso, mas me deparei com uma situação aparentemente simples que é difícil de fazer de forma concisa. Considere a List<Thing> thingse método Optional<Other> resolve(Thing thing). Quero mapear os Thingto...

239
Por que o Java Streams é único?

Diferentemente dos C # IEnumerable, em que um pipeline de execução pode ser executado quantas vezes quisermos, em Java, um fluxo pode ser 'iterado' apenas uma vez. Qualquer chamada para uma operação do terminal fecha o fluxo, tornando-o inutilizável. Esse 'recurso' tira muito poder. Imagino que o...

229
Eliminação do PermGen no JDK 8

Instalei o JDK 8 e estou tentando executar o Eclipse. Estou recebendo a seguinte mensagem de aviso: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0 Quais são os motivos para ignorar esta opção de