Java ::: Estruturas de Dados ::: Lista Ligada Simples |
Estruturas de dados em Java - Como criar uma lista singularmente ligada, inserindo e exibindo os valores contidos em cada nóQuantidade de visualizações: 11992 vezes |
Em dicas posteriores você aprendeu sobre listas singularmente e duplamente ligadas. Nesta dica você aprenderá a criar uma lista singularmente ligada (com referências apenas para o próximo nó), inserir alguns nós (sempre no final da lista) e usará um laço while para visitar todos os nós e exibir seus valores. A classe usada para representar cada nó é a seguinte (No.java): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // classe No public class No{ public int valor; public No proximo; } // fim da classe No Note que cada nó contém apenas um valor inteiro e uma referência para o próximo nó. Ao analisar o código você perceberá que tanto a inserção quanto a exibição dos nós são feitas usando métodos. Isso permitirá o reaproveitamento deste código em suas próprias implementações. Veja o código para a lista ligada (Lista.java): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Lista{ No inicio; // início da lista // função que permite exibir os valores de // todos os nós da lista public void exibir(){ if(inicio != null){ do{ System.out.println(inicio.valor); inicio = inicio.proximo; }while(inicio != null); } else System.out.println("A lista esta vazia\n\n"); } // função que permite inserir nós na lista. // veja que a função recebe o valor a ser // armazenado em cada nó public void inserir(int v){ No temp; // verifica se a lista está vazia if(inicio == null){ // reserva memória para o novo nó inicio = new No(); inicio.valor = v; // é o primeiro nó...não deve apontar para // lugar nenhum inicio.proximo = null; } else{ // não está vazia....vamos inserir o nó no final temp = inicio; // vamos varrer a lista até encontrar o último nó while(temp.proximo != null) temp = temp.proximo; // estamos no último nó...vamos criar um novo nó agora temp.proximo = new No(); // atribui o valor do nó temp.proximo.valor = v; // define o campo proximo do nó como null temp.proximo.proximo = null; } } } Compile as classes No.java e Lista.java e vamos fazer o teste (TesteJava.java): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class TesteLista{ public static void main(String args[]){ // vamos criar uma nova lista Lista lista = new Lista(); // vamos inserir quatro valores na lista lista.inserir(45); lista.inserir(3); lista.inserir(98); lista.inserir(17); // exibe os valores na lista lista.exibir(); System.exit(0); } } |
Java ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como usar classes abstratas em Java - Programação Orientada a Objetos - Java POOQuantidade de visualizações: 21783 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. |
Elixir ::: Dicas de Estudo e Anotações ::: Passos Iniciais |
Como instalar a linguagem de programação Elixir no WindowsQuantidade de visualizações: 674 vezes |
Está curioso(a) para aprender um pouco mais sobre a linguagem de programação Elixir? Nesta dica mostrarei como instalar, configurar e testar o ambiente de programação desta linguagem. O primeiro passo para instalar a Elixir no Windows é verificar se você já tem uma instalação do ambiente de programação Erlang. Se ainda não tiver, veja a nossa dica correspondente. Como baixar e instalar a Elixir Para baixar a Elixir e as ferramentas necessárias, acesse a URL https://elixir-lang.org/install.html#windows e baixe o instalador elixir-websetup.exe. Em seguida dê duplo-clique neste instalador e siga as instruções apresentadas. Não se preocupe. Basta aceitar as opções padrões que o instalador fará a instalação completa, inclusive incluindo o diretório bin na variável de ambiente PATH. Como testar a instalação da Elixir Para testar se sua instalação da linguagem de programação Elixir ocorreu sem problemas, abra uma nova janela de terminal e dispare o seguinte comando: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- C:\Users\Osmar>elixirc --version Se tudo correu bem você verá o seguinte resultado: Erlang/OTP 25 [erts-13.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns] Elixir 1.14.3 (compiled with Erlang/OTP 25) Pronto! Agora é só seguir as nossas dicas e truques de Elixir e ficar fluente em mais essa linguagem de programação. Bons estudos! |
Nossas 20 dicas & truques de programação mais recentes |
QGIS - Como exibir o id de uma camada do QGIS a partir de uma ação usando PyQGIS e o símbolo @layer_id QGIS - Como definir o título do projeto do QGIS usando PyQGIS e a função setTitle() da classe QgsProject QGIS - Como retornar o título do projeto do QGIS usando PyQGIS e a função title() da classe QgsProject AutoCAD Civil 3D - Como criar pontos COGO no AutoCAD Civil 3D |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
Nossas 20 dicas & truques de programação mais populares |
AngularJS - Aprenda a criar o seu primeiro controller AngularJS (em JavaScript puro, sem CLI nem TypeScript ActionScript - Como obter o nome do mês na forma abreviada PHP - Datas e horas em PHP - Como subtrair horas de uma data usando a função mktime() da linguagem PHP |
Você também poderá gostar das dicas e truques de programação abaixo |
GNU Octave - Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em GNU Octave AutoCAD Civil 3D .NET C# - Como listar os sites do documento atual do Civil 3D usando a função GetSiteIds() da AutoCAD Civil 3D .NET API Java - Como converter Coordenadas Cartesianas para Coordenadas Polares usando Java - Java para Engenharia |
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 |