Articles of java 8

Java 8 Lambda Expressions – o que acontece com vários methods na class aninhada

Estou lendo sobre os novos resources em: http://www.javaworld.com/article/2078836/java-se/love-and-hate-for-java-8.html Eu vi o exemplo abaixo: Usando a class anônima: button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { System.out.println(“Action Detected”); } }); Com Lambda: button.addActionListener(e -> { System.out.println(“Action Detected”); }); O que alguém faria com um MouseListener se quisesse implementar vários methods dentro da class anônima, por exemplo: […]

Muito confuso com o Java 8 Inferência do tipo Comparador

Eu estive olhando para a diferença entre Collections.sort e list.sort , especificamente em relação ao uso dos methods estáticos Comparator e se os tipos de parâmetros são necessários nas expressões lambda. Antes de começarmos, eu sei que eu poderia usar referências a methods, por exemplo, Song::getTitle para superar meus problemas, mas minha consulta aqui não […]

Lambdas: variables ​​locais precisam de final, variables ​​de instância não

Em um lambda, as variables ​​locais precisam ser finais, mas as variables ​​de instância não. Por quê?

Como negar um predicado de referência do método

No Java 8, você pode usar uma referência de método para filtrar um stream, por exemplo: Stream s = …; long emptyStrings = s.filter(String::isEmpty).count(); Existe uma maneira de criar uma referência de método que é a negação de um existente, ou seja, algo como: long nonEmptyStrings = s.filter(not(String::isEmpty)).count(); Eu poderia criar o método not como […]

Encontre o primeiro elemento por predicado

Acabei de começar a brincar com o Java 8 lambdas e estou tentando implementar algumas das coisas que estou acostumado em linguagens funcionais. Por exemplo, a maioria das linguagens funcionais possui algum tipo de function find que opera em seqüências, ou listas que retornam o primeiro elemento, para o qual o predicado é true . […]

Converte java.time.LocalDate no tipo java.util.Date

Eu quero converter java.time.LocalDate no tipo java.util.Date . Porque eu quero definir a data no JDateChooser . Ou existe algum seletor de datas que suporte java.time datas do java.time ?

Quebrar ou retornar do stream de Java 8 para cada?

Ao usar a iteração externa sobre um Iterable , usamos break ou return do loop for-each aprimorado como: for (SomeObject obj : someObjects) { if (some_condition_met) { break; // or return obj } } Como podemos break ou return usando a iteração interna em uma expressão lambda do Java 8 como: someObjects.forEach(obj -> { //what […]

Inferência de tipo genérico não funciona com o encadeamento de methods?

Este código é compilado no Java 8, mas não é compilado no Java 7: class Map { static Map empty() {return null;} Map put(K k, V v) {return null;} V get(K k) {return null;} } class A { static void f(Map m){} public static void main(String[] args) { f(Map.empty()); } } Não infere o tipo […]

Contagem de frequência de palavras Java 8

Como contar a frequência de palavras da lista no Java 8? List wordsList = Lists.newArrayList(“hello”, “bye”, “ciao”, “bye”, “ciao”); O resultado deve ser: {ciao=2, hello=1, bye=2}

Java 1.8 ASM ClassReader falhou ao analisar o arquivo de class – provavelmente devido a uma nova versão do arquivo de class Java que ainda não é suportada

Meu aplicativo da web funciona bem no JDK 1.7, mas falha na 1.8 com a seguinte exceção (durante a boot do servidor de aplicativos com o Jetty 8). Estou usando a versão Spring: 3.2.5.RELEASE. Exceção: org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file – probably due to a new Java class file version that isn’t […]