Java 8 Lambda: Comparador

quero fazer uma lista com Lambda: List<Message> messagesByDeviceType = new ArrayList<Message>(); me ... sage>) in the type List<Message> is not applicable for the arguments ((Message o1, Message o2) -> {})

Compreender as expressões Lambda e os delegados [fechado]

Eu tenho tentado descobrir isso por algum tempo (lendo blogs online e articlaes), mas até agora sem sucesso. O que sã ... antagens e desvantagens de ambos? As melhores práticas possíveis de quando usar uma ou outra? Obrigado antecipadamente.