Você está aqui: Java ::: Dicas & Truques ::: Matemática e Estatística |
Obtendo a raiz cúbica de um númeroQuantidade de visualizações: 17504 vezes |
/* O método: public static double cbrt(double a) recebe um valor double e retorna a raiz cúbica de um número. */ public class Estudos{ public static void main(String[] args){ double numero = 27; System.out.println("A raiz cúbica de " + numero + " é " + Math.cbrt(numero)); } } |
![]() |
Java ::: Coleções (Collections) ::: ArrayList |
Como adicionar todos os elementos de uma ArrayList ou coleção à uma outra ArrayList do Java usando o método addAll()Quantidade de visualizações: 15506 vezes |
Em algumas situações pode ser necessário adicionar todos os elementos de uma ArrayList ou outra coleção a uma determinada ArrayList já existente. Isso pode ser feito por meio do uso do método addAll() da classe ArrayList. Na versão 1.5 do Java, este método possui duas assinaturas. Veja a primeira:public boolean addAll(Collection<? extends E> c) Aqui nós podemos adicionar à uma ArrayList existente todos os elementos de uma determinada coleção, desde que, é claro, esta coleção implemente ou descenda de alguma classe que implemente a interface Collection. Note também o uso de genéricos na coleção a ser fornecida como argumento. É importante observar que, se passarmos uma coleção de tipos diferentes daquela na qual estamos chamando o método addAll() teremos um erro de compilação. Veja um exemplo no qual adicionamos todos os elementos de uma ArrayList no final de outra: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá strings ArrayList<String> nomes = new ArrayList<String>(); // cria uma segunda ArrayList que conterá mais strings ArrayList<String> nomes2 = new ArrayList<String>(); // adiciona itens na primeira lista nomes.add("Carlos"); nomes.add("Maria"); nomes.add("Fernanda"); // adiciona itens na segunda lista nomes2.add("Osmar"); nomes2.add("Zacarias"); // vamos adicionar os elementos da segunda lista // no final da primeira lista nomes.addAll(nomes2); // vamos exibir o resultado for(int i = 0; i < nomes.size(); i++){ System.out.println(nomes.get(i)); } System.exit(0); } } A segunda assinatura do método addAll() nos permite definir a posição no ArrayList alvo a partir da qual os elementos da coleção fonte serão adicionados. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public boolean addAll(int index, Collection<? extends E> c) Eis um exemplo no qual inserimos os elementos de uma ArrayList a partir do segundo elemento da ArrayList alvo. Note que os itens existentes têm suas posições alteradas de forma a acomodar os novos elementos: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá strings ArrayList<String> nomes = new ArrayList<String>(); // cria uma segunda ArrayList que conterá mais strings ArrayList<String> nomes2 = new ArrayList<String>(); // adiciona itens na primeira lista nomes.add("Carlos"); nomes.add("Maria"); nomes.add("Fernanda"); // adiciona itens na segunda lista nomes2.add("Osmar"); nomes2.add("Zacarias"); // vamos adicionar os elementos da segunda lista // a partir do segundo elemento da primeira lista nomes.addAll(1, nomes2); // vamos exibir o resultado for(int i = 0; i < nomes.size(); i++){ System.out.println(nomes.get(i)); } System.exit(0); } } Como resultado da execução deste código nós teremos: Carlos Osmar Zacarias Maria Fernanda |
Java ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como usar classes abstratas em Java - Programação Orientada a Objetos - Java POOQuantidade de visualizações: 21786 vezes |
Classes abstratas (abstract classes) não diferem muito das classes que normalmente criamos, ou seja, elas também podem possuir propriedades e métodos. Porém, não é possível criar instâncias de uma classe abstrata usando o operador new. Veja:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- abstract class Pessoa{ public String nome; public int idade; } public class Estudos{ public static void main(String args[]){ // cria um objeto da classe Pessoa Pessoa p = new Pessoa(); } } Ao tentarmos compilar este exemplo teremos a seguinte mensagem: Estudos.java:9: Pessoa is abstract; cannot be instantiated Pessoa p = new Pessoa(); ^ 1 error Classes abstratas geralmente contém métodos abstratos (ainda que métodos não abstratos sejam também permitidos). Um método abstrato é um método que possui apenas a assinatura. Não há implementação. Esta implementação deverá ser fornecida pela subclasse ou classe derivada. Uma classe que contém métodos abstratos deverá, obrigatoriamente, ser declarada abstrata. Veja um exemplo de um método abstrato: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public abstract class Pessoa{ public abstract String getNome(); } Se a classe não fosse declarada com o modificador abstract, teríamos a seguinte mensagem de erro de compilação: Pessoa.java:1: Pessoa is not abstract and does not override abstract method getNome() in Pessoa public class Pessoa{ ^ 1 error Classes abstratas são um dos tópicos mais complicados da linguagem Java e uma dor de cabeça enorme para aqueles que estão estudando para a certificação Java. Mostramos abaixo algumas dicas resultantes de nossas pesquisas sobre o assunto. 1)Uma classe não abstrata não pode conter métodos abstratos. Se uma classe concreta (não abstrata) herda de uma classe abstrata e não implementa todos os métodos abstratos, a classe derivada deve ser declarada abstract. Além disso, métodos abstratos não podem ser marcados como static. Insistir nisso pode gerar a seguinte mensagem de erro de compilação: Pessoa.java:2: illegal combination of modifiers: abstract and static public static abstract String getNome(); ^ 2) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode conter construtores. Tais construtores serão invocados nos construtores das classes derivadas. 3) Uma subclasse pode ser abstrata até mesmo se sua superclasse for concreta. E isso é fácil de notar, uma vez que todas as classes Java herdam de Object, que é concreta. 4) Uma classe derivada pode sobrescrever um método de sua superclasse e declará-lo abstract. Isso faz sentido quando a classe derivada for abstract e quiser tornar o método herdado inválido. 5) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode ser usada como um tipo de dados. Esta técnica é útil quando parte do time de desenvolvedores precisa adiantar códigos que dependem de classes que ainda não foram implementadas (e, portanto, herdarão das classes abstratas usadas como tipos de dados) por outra parte do mesmo time. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Internet, LAN e E-Mail |
||||
Exercícios Resolvidos de Java - Como testar se há um serviço sendo executado em uma porta de um servidor ou máquina localQuantidade de visualizações: 7461 vezes |
||||
Pergunta/Tarefa: Este exercício resolvido é sobre Internet, Rede e E-Mail usando programação Java. Escreva um programa Java console ou GUI que peça ao usuário para informar um número de porta na máquina local. Em seguida, tente se conectar a esta porta e informe se há algum serviço sendo executado na porta informada. A entrada e saída do programa pode ser algo como: Informe o número da porta a ser pesquisada: 3306 Há um serviço na porta informada Informe o número da posta a ser pesquisada: 2040 Não há nenhum serviço na porta informada Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
Veja que, neste exercício, podemos ter o surgimento de duas exceções: UnknownHostException (a máquina informada não pôde ser encontrada) e IOException (houve erro de entrada e/ou saída). Por esta razão, é uma boa idéia envolver o código em um bloco try...catch. | ||||
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 |
Delphi - Como calcular MDC em Delphi |
Códigos Fonte |
![]() Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
![]() Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |