Articles of lambda

Modelo de manipulador de events fraco para uso com lambdas

OK, então isso é mais uma resposta do que uma pergunta, mas depois de fazer essa pergunta e reunir os vários pedaços de Dustin Campbell , Egor e também uma última dica da ‘estrutura IObservable / Rx / Reactive ‘, eu acho que trabalhei uma solução viável para esse problema em particular. Pode ser completamente […]

Como defino um método que usa um lambda como parâmetro no Java 8?

No Java 8, os methods podem ser criados como expressões Lambda e podem ser passados ​​por referência (com um pouco de trabalho sob o capô). Há muitos exemplos online com lambdas sendo criados e usados ​​com methods, mas nenhum exemplo de como fazer um método tomando um lambda como parâmetro. Qual é a syntax para […]

Como invoco um método de extensão usando reflection?

Eu aprecio que perguntas semelhantes foram feitas antes, mas estou lutando para invocar o método Linq Where no código a seguir. Eu estou olhando para usar reflection para dinamicamente chamar esse método e também dinamicamente criar o delegado (ou lambda) usado na cláusula Where . Este é um exemplo de código curto que, uma vez […]

Lambda esta referência em java

Eu quero converter uma anonymous class para uma lambda expression . Mas essa class anônima eu uso a palavra this chave this . Por exemplo, escrevi este simples padrão Observer/Observable : import java.util.ArrayList; import java.util.Collection; public static class Observable { private final Collection notifiables = new ArrayList(); public Observable() { } public void addObserver(Observer notifiable) […]

_ (sublinhado) é uma palavra reservada

Acabei de replace s na seguinte expressão lambda por _ : s -> Integer.parseInt(s) Compilador do Eclipse diz: ‘_’ não deve ser usado como um identificador, pois é uma palavra-chave reservada do nível de origem 1.8 on. Não encontrei nenhuma explicação na Estrutura / Palavras-chave Lexical do JLS §3.9 .

Variável usada na expressão lambda deve ser final ou efetivamente final

Variável usada na expressão lambda deve ser final ou efetivamente final Quando tento usar o calTz ele está mostrando esse erro. private TimeZone extractCalendarTimeZoneComponent(Calendar cal,TimeZone calTz) { try { cal.getComponents().getComponents(“VTIMEZONE”).forEach(component->{ VTimeZone v = (VTimeZone) component; v.getTimeZoneId(); if(calTz==null) { calTz = TimeZone.getTimeZone(v.getTimeZoneId().getValue()); } }); } catch (Exception e) { log.warn(“Unable to determine ical timezone”, e); } […]

Múltipla ordem por com LINQ

Eu começo com uma class básica que eu quero manipular em uma lista usando o LINQ, algo como o seguinte: public class FooBar { public virtual int Id { get; set; } public virtual string Foo{ get; set; } public virtual string Bar{ get; set; } } Isto é o que eu finalmente descobri para […]

Como obter o MethodInfo de uma referência de método do Java 8?

Por favor, dê uma olhada no seguinte código: Method methodInfo = MyClass.class.getMethod(“myMethod”); Isso funciona, mas o nome do método é passado como uma string, então isso será compilado mesmo que myMethod não exista. Por outro lado, o Java 8 introduz um recurso de referência de método. É verificado em tempo de compilation. É possível usar […]

Java 8 Streams: vários filtros vs. condição complexa

Às vezes você quer filtrar um Stream com mais de uma condição: myList.stream().filter(x -> x.size() > 10).filter(x -> x.isCool()) … ou você poderia fazer o mesmo com uma condição complexa e um único filter : myList.stream().filter(x -> x.size() > 10 && x -> x.isCool()) … Meu palpite é que a segunda abordagem tem melhores características […]

Vincular Vs Lambda?

Eu tenho uma pergunta sobre qual estilo é preferido: std :: bind Vs lambda em C ++ 0x. Eu sei que eles servem, de alguma forma, diferentes propósitos, mas vamos dar um exemplo da funcionalidade de interseção. Usando lambda : uniform_int distribution(1, 6); mt19937 engine; // lambda style auto dice = [&]() { return distribution(engine); […]