Enquanto escrevia o código para outra resposta neste site, me deparei com esta peculiaridade: static void testSneaky() { final Exception e = new Exception(); sneakyThrow(e); //no problems here nonSneakyThrow(e); //ERRROR: Unhandled exception:
Enquanto escrevia o código para outra resposta neste site, me deparei com esta peculiaridade: static void testSneaky() { final Exception e = new Exception(); sneakyThrow(e); //no problems here nonSneakyThrow(e); //ERRROR: Unhandled exception:
Eu gostaria de fazer o seguinte: List<Integer> list = IntStream.range(0, 7).collect(Collectors.toList()); mas de uma forma que a lista resultante é uma implementação da Goiaba ImmutableList. Eu sei que poderia fazer List<Integer> list = IntStream.range(0,
Ao experimentar o recurso de captura múltipla, encontrei no meu m1()método que tudo está funcionando bem como esperado. No entanto, no m2()mesmo código não compila. Acabei de alterar a sintaxe para reduzir o número de linhas de código. public class Main { public int m1(boolean bool) { try {...
Ao analisar as maneiras de converter matrizes primitivas em Streams, descobri que char[]elas não são suportadas enquanto outros tipos de matrizes primitivas são suportadas. Algum motivo específico para deixá-los de fora no
Podemos encontrar o hashcodede a listque se contém como element? Sei que é uma prática ruim, mas foi o que o entrevistador perguntou. Quando executei o seguinte código, ele lança um StackOverflowError: public class Main { public static void main(String args[]) { ArrayList<ArrayList> a =...
Todo cliente tem um ID e muitas faturas, com datas, armazenadas como Hashmap de clientes por ID, de um hashmap de faturas por data: HashMap<LocalDateTime, Invoice> allInvoices = allInvoicesAllClients.get(id); if(allInvoices!=null){ allInvoices.put(date, invoice); //<---REPEATED...
Usando Java 8 e Java 11, considere o seguinte TreeSetcom um String::compareToIgnoreCasecomparador: final Set<String> languages = new TreeSet<>(String::compareToIgnoreCase); languages.add("java"); languages.add("c++"); languages.add("python"); System.out.println(languages); // [c++,...
Questão Como você cria um carregador de plano de fundo adequado no Java 8? As condições: os dados devem ser carregados em segundo plano após o carregamento, os dados devem ser exibidos enquanto os dados são carregados, nenhuma solicitação adicional deve ser aceita se houver solicitações enquanto...
Eu tropecei neste trecho: public class ParamTest { public static void printSum(int a, double b) { System.out.println("In intDBL " + (a + b)); } public static void printSum(long a, long b) { System.out.println("In long " + (a + b)); } public static void printSum(double a, long b) {...
Eu tenho algum código Java que fornece objetos de items. Limita-os com base no maxNumber: items.stream() .map(this::myMapper) .filter(item -> item != null) .limit(maxNumber) .collect(Collectors.toList()); Funciona corretamente, mas a pergunta é a seguinte: existe uma maneira de pular o...
Parece que IntStream.iterateé apenas uma versão leve encomendada para IntStream.generate. É verdade? Caso contrário, qual é a principal
Não compila: void test(Integer x) { switch (x) { case 'a': } } Compila OK: void test(Byte x) { switch(x) { case 'a':
JLS : O operador de precedência mais baixa é a seta de uma expressão lambda (->) , seguida pelos operadores de atribuição. Seguido em que direção (prioridade crescente, prioridade decrescente)? - "seguido" significa que a atribuição tem prioridade mais alta ou mais baixa (em relação ao...
Eu li este post com zero negativo e positivo . Para meu entendimento, o código a seguir deve dar true e true como saída. No entanto, está dando falsee truecomo saída. Estou comparando zero negativo com um zero positivo. public class Test { public static void main(String[] args) { float f =...
Eu tenho um mapa Map<K, V>e meu objetivo é remover os valores duplicados e gerar a mesma estrutura Map<K, V>novamente. Caso o valor duplicado for encontrado, deve ser selecionada uma chave ( k) das duas teclas ( k1e k1) que detêm esses valores, por isso, assumir a
Desejo usar um Streampara paralelizar o processamento de um conjunto heterogêneo de arquivos JSON armazenados remotamente, de número desconhecido (o número de arquivos não é conhecido antecipadamente). Os arquivos podem variar amplamente em tamanho, de 1 registro JSON por arquivo até 100.000...
Eu estava tentando converter uma matriz int em List e segui a rota desconhecida de usar o Java 8 Stream e criei essa Arrays.stream(arr).boxed().collect(Collectors.toList()); Eu ainda tenho dificuldade para entender completamente essa linha, principalmente, Por que Collectors.toList(), neste...
Preciso de algum tipo de serviço que execute algumas tarefas simultaneamente e em um intervalo de 1 segundo por 1 minuto. Se uma das tarefas falhar, quero interromper o serviço e todas as tarefas executadas com algum tipo de indicador de que algo deu errado; caso contrário, após um minuto tudo...
O código a seguir: void someMethod(Object value) { String suffix = getSuffix(); if (suffix != null) value += suffix; [...] } compila sem erros no JDK 8 (usando -source 1.6), mas falha no JDK 6 com a mensagem de erro: Operator '+' cannot be applied to java.lang.Object and
Considere as duas classes e a interface a seguir: public class Class1 {} public class Class2 {} public interface Interface1 {} Por que a segunda chamada para mandatoryinvocar o método sobrecarregado com Class2, se getInterface1e Interface1não tem relacionamento Class2? public class Test {...