Você está aqui: Java ::: Coleções (Collections) ::: LinkedList |
Convertendo uma LinkedList em um array de TQuantidade de visualizações: 8611 vezes |
O título desta dica é meio confuso, visto que à primeira vista, o Java não contém um tipo T. Na verdade, usei o T para definir um tipo genérico, ou seja, mostrarei como converter uma lista ligada LinkedList em um array de qualquer tipo, desde que este novo tipo seja uma interface implementada pelos elementos da lista ligada ou uma superclasse destes. O primeiro passo é definir e alocar espaço para o novo array: String array[] = new String[nomes.size()]; CharSequence array[] = new String[nomes.size()]; array = nomes.toArray(array); Integer array[] = new Integer[nomes.size()]; array = nomes.toArray(array); Exception in thread "main" java.lang.ArrayStoreException: java.lang.String at java.util.LinkedList.toArray(Unknown Source) at Estudos.main(Estudos.java:18) import java.util.*; public class Estudos{ public static void main(String args[]){ // Cria uma LinkedList de Inteiros LinkedList<String> nomes = new LinkedList<String>(); // adiciona elementos no final da lista // ligada nomes.add("Osmar"); nomes.add("Carlos"); nomes.add("Marcelo"); // vamos converter esta lista em um // array de String String array[] = new String[nomes.size()]; array = nomes.toArray(array); // exibe o resultado for(int i = 0; i < array.length; i++){ System.out.println(array[i]); } } } |
![]() |
Java ::: Dicas & Truques ::: Expressões Regulares |
Como remover todos os espaços de uma string em Java usando expressões regularesQuantidade de visualizações: 8102 vezes |
Nesta dica mostrarei como usar o método replaceAll() da classe Matcher da linguagem Java para remover todos os espaços de um texto ou frase. Esta classe faz parte do pacote java.util.regex e é usada em quase todos os códigos Java envolvendo expressões regulares. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; import java.util.regex.*; public class Estudos{ public static void main(String args[]){ String padrao = "\\s"; Pattern regPat = Pattern.compile(padrao); String frase = "Esta frase contém alguns espaços"; System.out.println(frase); Matcher matcher = regPat.matcher(frase); String res = matcher.replaceAll(""); System.out.println("Sem espaços: " + res); } } Ao executar este código Java nós teremos o seguinte resultado: Esta frase contém alguns espaços Sem espaços: Estafrasecontémalgunsespaços |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Usando o laço for para exibir a tabela de caracteres ASCII de 1 até 127Quantidade de visualizações: 3955 vezes |
Pergunta/Tarefa: Escreva um programa Java console que usa o laço for para exibir a tabela de caracteres que são equivalentes aos códigos ASCII de 1 até 127. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; public class Estudos{ public static void main(String[] args){ // um laço que começa em 1 e termina em 127 for(int i = 1; i <= 127; i++){ // vamos obter o caractere correspondente char c = (char)(i); // vamos exibí-lo System.out.print(c + " "); // é hora de quebrar a linha? if(i % 10 == 0){ System.out.println(); } } System.out.println(); } } |
Java ::: Coleções (Collections) ::: ArrayList |
Java ArrayList - Como remover uma faixa de elementos de uma ArrayList simulando a função removeRange() do JavaQuantidade de visualizações: 9303 vezes |
Este exemplo mostra como remover uma faixa de elementos de uma ArrayList. Note que vamos simular o comportamento do método removeRange() da classe ArrayList. Este método é marcado como protected, o que nos possibilita acesso a ele somente se escrevermos uma classe que estende (extends) ArrayList. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá strings ArrayList<String> nomes = new ArrayList<>(); // adiciona itens na lista nomes.add("Carlos"); nomes.add("Maria"); nomes.add("Fernanda"); nomes.add("Osmar"); nomes.add("Maria"); // exibe os elementos da ArrayList System.out.println("Todos os elementos:"); for(int i = 0; i < nomes.size(); i++){ System.out.println(nomes.get(i)); } // Vamos remover os elementos 2, 3 e 4 for(int i = 1; i < 4; i++){ nomes.remove(1); } // exibe os elementos da ArrayList System.out.println("\nElementos restantes:"); for(int i = 0; i < nomes.size(); i++){ System.out.println(nomes.get(i)); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: Todos os elementos: Carlos Maria Fernanda Osmar Maria Elementos restantes: Carlos Maria |
Java ::: Dicas & Truques ::: Arquivos e Diretórios |
Como verificar se um arquivo ou diretório existe em Java usando o método exists() da classe FileQuantidade de visualizações: 40 vezes |
Em algumas situações nós precisamos checar a existência de um arquivo ou diretório em Java. Para isso nós podemos usar o método exists() da classe File, do pacote java.io. Este método recebe uma string contendo o caminho do arquivo ou diretório e retorna true se o arquivo ou diretório indicado existir, e false em caso contrário. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; import java.io.*; public class Estudos{ public static void main(String[] args){ // vamos verificar a existência de um arquivo File arquivo = new File("C:\\estudos_java\\lago.jpg"); if(arquivo.exists()){ System.out.println("O arquivo existe"); } else{ System.out.println("O arquivo não existe"); } } } O arquivo existe no caminho indicado. É importante observar que o método exists() pode disparar uma exceção do tipo Security Exception se o arquivo ou diretório não possuir permissão de acesso ou escrita. |
Java ::: Dicas & Truques ::: Matemática e Estatística |
Como converter de octal para decimal usando o método parseInt() da classe Integer da linguagem JavaQuantidade de visualizações: 10112 vezes |
Nesta dica eu mostrarei como podemos tirar proveito do método parseInt() da classe Integer do Java para converter um valor octal para decimal. Para isso nós só precisamos fornecer o valor 8 como segundo argumento para esta função. Veja o código completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package arquivodecodigos; public class Estudos{ public static void main(String args[]){ String octal = "10"; // efetua a conversão de octal para // decimal int decimal = Integer.parseInt(octal, 8); // exibe o resultado System.out.println("O octal " + octal + " em decimal é " + decimal); System.exit(0); } } Ao executarmos este código nós teremos o seguinte resultado: O octal 10 em decimal é 8 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Um programa Java que solicita ao usuário que informe sua idade em anos, meses e dias e mostre sua idade em diasQuantidade de visualizações: 13947 vezes |
Pergunta/Tarefa: Escreva um programa Java que solicite ao usuário que informe sua idade em anos, meses e dias, ou seja, sua idade atual em anos e a quantidade de meses e dias decorridos desde seu aniversário. Seu programa deverá exibir uma saída parecida com: Informe sua idade em anos, meses e dias Anos: 25 Meses: 2 Dias: 12 Idade expressa em dias: 9197 Resposta/Solução: Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner): ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- public static void main(String[] args){ // não se esqueça de adicionar um import para a classe Scanner // import java.util.Scanner; // vamos criar um objeto da classe Scanner Scanner entrada = new Scanner(System.in); // variáveis que vão guardar a idade em anos, meses e dias; int anos, meses, dias; int idade_dias; // guardará a idade em dias System.out.println("Informe sua idade em anos, meses e dias"); // obtém os anos System.out.print("Anos: "); anos = Integer.parseInt(entrada.nextLine()); // obtém os meses System.out.print("Meses: "); meses = Integer.parseInt(entrada.nextLine()); // obtém os dias System.out.print("Dias: "); dias = Integer.parseInt(entrada.nextLine()); // vamos calcular a idade em dias idade_dias = (anos * 365) + (meses * 30) + dias; // vamos exibir o resultado System.out.println("Idade expressa em dias: " + idade_dias); } |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se duas strings são iguais em Java sem considerar letras maiúsculas e minúsculas usando o método equalsIgnoreCase()Quantidade de visualizações: 143 vezes |
Nesta dica mostrarei como podemos usar o método equalsIgnoreCase() da classe String da linguagem Java para verificar se duas palavras, frases ou textos são iguais desconsiderando letras maiúsculas e minúsculas. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; public class Estudos{ public static void main(String[] args){ String s1 = "GOSTO de Java"; String s2 = "gosto de java"; System.out.println("A primeira string é: " + s1); System.out.println("A segunda string é: " + s2); if(s1.equalsIgnoreCase(s2)){ System.out.println("As duas strings sao iguais"); } else{ System.out.println("As duas strings não sao iguais"); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: A primeira string é: GOSTO de Java A segunda string é: gosto de java As duas strings são iguais |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como testar se um array possui valores repetidos em JavaQuantidade de visualizações: 1872 vezes |
Pergunta/Tarefa: Escreva um programa Java que declara, constrói um vetor de 10 posições e pede ao usuário para informar os valores de seus elementos. Em seguida, varra o vetor e informe a existência ou não de valores repetidos. Sua saída deverá ser parecida com: Informe o valor para o índice 0: 3 Informe o valor para o índice 1: 6 Informe o valor para o índice 2: 8 Informe o valor para o índice 3: 10 Informe o valor para o índice 4: 2 Informe o valor para o índice 5: 4 Informe o valor para o índice 6: 6 Informe o valor para o índice 7: 10 Informe o valor para o índice 8: 3 Informe o valor para o índice 9: 30 Há valores repetidos no vetor Veja a resolução comentada deste exercício usando Java: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); // vamos declarar e construir um vetor de 10 elementos int valores[] = new int[10]; // vamos pedir que o usuário informe os valores for(int i = 0; i < valores.length; i++){ System.out.print("Informe o valor para o índice " + i + ": "); valores[i] = Integer.parseInt(entrada.nextLine()); } // agora vamos verificar se o vetor possui valores repetidos boolean repetidos = false; // percorremos todos os elementos do vetor for(int i = 0; i < valores.length; i++){ // para cada elemento em i nos verificamos os que estão nos indices seguintes for(int j = i + 1; j < valores.length; j++){ // encontramos algum repetido? if(valores[j] == valores[i]){ repetidos = true; break; // saímos do laço } } } if(repetidos){ System.out.println("Há valores repetidos no vetor"); } else{ System.out.println("Nao há valores repetidos no vetor"); } System.out.println("\n"); } } |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |