Ir ao conteúdo
  • Cadastre-se

Guilherme Tonello

Membro Júnior
  • Posts

    12
  • Cadastrado em

  • Última visita

Reputação

2
  1. Antes de tudo aprenda o JavaSE e o SQL, pois são as bases para as outras áreas com Java. Agora depende para qual área do Java você quer seguir: desenvolvimento de games, web, celular etc. Eu estudo a parte de web e um pouquinho de desenvolvimento de games. O maior mercado de Java se não me engano é o de Java Web, nesse você tem que possuir conhecimentos de banco de dados, linguagem sql, java se e os frameworks como hibernate, spring,thymeleaf etc. É bom possuir noções báscias de html, css e javascript também. Caso queira seguir para a área full-stack (front-end e back-end) é bom estudar muito o java e obter conhecimentos de níveis intermediários a avançados de html, css e javascript, além de seus respectivos frameworks também, como bootstrap, jquery, angular etc. Para as outras áreas com Java, recomendo dar uma pesquisada.
  2. Gratuitos: Curso da Universidade XTI(Reupload) - Sem certificado, mas é um dos melhores: Loiane Groner - Com certificado, mas tem que fazer pelo site dela: https://www.youtube.com/user/Loianeg Dev Dojo - Não sei se possui certificado: https://www.youtube.com/channel/UCjF0OccBT05WxsJb2zNkL4g/playlists Escola Virtual do Bradesco - Com certificado: https://www.ev.org.br/ Pagos: Existem diversos cursos pagos, mas eu recomendo o do Alex. É Java Avançado e para Web, então depois de terminar Java SE, caso queira ir para o Java EE, recomendo o do Alex: https://www.javaavancado.com/formacao-java-web-profissional/index.html?hsrc=cG9ydGFsamE%3D
  3. Isso mesmo, você pode ter uma variável com os seguintes nomes: nOME Sobrenome CaSaDo Enfim, é possível, porém deixa o código vamos dizer que poluído. Regra para nomes são apenas para não utilizar números no começo de variáveis/classes/métodos e pacotes. Tem mais algumas regrinhas, mas se a IDE não indicar erro ao nomear uma variável/classe/método/pacote etc, quer dizer que o nome pode ser usado.
  4. O nome pode ser o que você quiser, mas existem as convenções pra deixar com um padrão de estilização e facilitar a leitura, é como uma ABNT do Java. O método é um comando ou um conjunto de comandos que permite que facilite na hora de digitar códigos, evitando ter que digitar várias coisas iguais ou parecidas, se você já estudou javascript, pode-se considerar que o método é uma função. Classe é onde você digita seu código, ou seja o arquivo do código fonte do teu projeto. Variável é um valor que você define e que pode ser utilizado para vários fins.
  5. Bom, métodos são representados com (). Por exemplo, no autocomplete do eclipse é possível ver isso. Usando uma classe de exemplo, no caso a classe Exemplo: public class Exemplo { int numero = 10; //define uma variável numero com o valor 10 public void imprimir() { //início do método imprimir, nesse caso com uma assinatura nula System.out.println("Imprimiu..."); //comandos desse método } //fim do método imprimir public static void main(String[] args) { //início do método de execução do programa java Exemplo e = new Exemplo(); //criando um objeto do tipo dessa classe System.out.println(e.numero); //imprimindo o número definido lá em cima e.imprimir(); //chamando o método criado lá em cima } //fim do método main } Como você pode ver, os métodos possuem os parênteses, permitindo assim diferenciá-los de variáveis. No Eclipse, ao usar Ctrl+Espaço aparece uma tela para auto completar o seu código. Nela é possível ver as informações: http://prntscr.com/n0nmff É possível ver o nome, o tipo/retorno e a classe que pertence. Por exemplo, vemos que numero é uma variável por não possuir os '()', vemos também que é do tipo int e pertence a classe Exemplo. Também é possível ver que imprimir é um método por possuir os '()' depois do nome, vemos que ele não possui um tipo de retorno pois está void vemos também que ele está na classe Exemplo
  6. Recomendo estudar sobre convenções do Java: https://www.devmedia.com.br/convencoes-de-codigo-java/23871 Basicamente o camel case faz com que as variáveis/métodos sejam definidas com letras minúsculas e caso seja uma palavra composta a primeira letra de cada palavra será maiúsculas, exceto a primeira. Para variáveis, dá-se nomes do que elas representam, para métodos, utiliza-se verbos na hora de dar o nome. Exemplos: - nome - sobrenome - nomeCompleto - nomeDoPai - nomeDaMae - dividir() - fazerRaizQuadrada() Para constantes, o nome é todo em maiúsculo e para separar as palavras usa-se underline(_). Exemplos: - ALTURA - SEXO_MASCULINO - SEXO_FEMININO - DINHEIRO_NA_CONTA_DO_BANCO //dinheiro na conta do banco constante é triste kkkkk Agora, em relação a sua outra dúvida: Para nome das classes, normalmente é um substantivo e segue uma regra bem semelhante a camel case. Porém diferentemente da camel case que a primeira letra é minúscula, utiliza-se uma letra maiúscula. Exemplos de nomes de classes: - Matematica - Cachorro - Galinha - Fazenda - Pessoa - ContaBancaria - ContaConjunta Variável é o mesmo que uma constante, porém a informação que ela armazena pode variar. Exemplo: int a = 10; //a vale 10 a += 11; //agora a vale 21 Já em uma constante: final int A = 10; //A vale 10 e não pode ser alterado A += 11; //ocorre erro Funções no Java são chamadas de métodos. Todo método possui seus modificadores, tipo de retorno e alguns possuem parâmetros(ou assinatura). Pode haver métodos com o mesmo nome, porém seus parâmetros devem ser diferentes. Exemplos: public double soma(double a, double b) { return a + b; } public double soma(double a) { //pode ocorrer, pois a assinatura é: (double a), sendo assim diferente de: (double a, double b) return a+a; } O retorno pode ser qualquer um, nesse caso eu utilizei o double. Para não haver tipo de retorno utiliza-se void. Exemplo: public void exemploDeMetodoSemRetorno() { System.out.println("Método imprimindo na tela."); } Você pode criar métodos com os mesmos nomes de variáveis(e vice-versa), mas não é recomendado fazer isso, pois pode causar confusão na hora de chamar o método ou a variável. Dar nomes não utilizando a convenção não causa erro, mas não deixa seu código em um padrão de estilização, o que pode causar problemas para outros visualizarem seu código.
  7. Eu fiz aqui agora pouco com Arrays, mas não testei. Classe Agenda: public class Agenda { private Contato[] contatos; public void adicionarContato(Contato contato) { for (int i = 0; i < contatos.length; i++) { //percore o array de contatos if (contatos[i] == null) { //checa se a posição percorrida é nula contatos[i] = contato; //se for nula, essa posição agora é marcada com um novo contato contatos[i].estaNaAgenda = true; System.out.println("Contato " + contato.getNome() + " adicionado"); //notifica a adição de um contato break; //sai do loop } } } public void removerContato(Contato contato) { for (int i = 0; i < contatos.length; i++) { //percorre o array de contatos if (contatos[i] == contato) { //checa se a posição percorrida é o contato desejado contatos[i].estaNaAgenda = false; //o for abaixo faz com que os outros elementos do array sejam reposicionados for (int k = i; k < contatos.length - 1; k++) contatos[k] = contatos[k+1]; System.out.println("Contato " + contato.getNome() + " removido"); //informa sobre a remoção do contato break; //sai do loop } } } public boolean buscarContato(String nome) { //usei boolean para retornar se o contato existe ou não boolean estado = false; //define uma variável estado, por padrão false try { //tenta executar o seguinte código for (int i = 0; i < contatos.length; i++) { //percorre o array if (contatos[i].getNome().equals(nome)) { //verifica se o nome do elemento corrente é igual ao nome definido estado = contatos[i].estaNaAgenda; //define a variável estado break; //sai do loop } } } catch (Exception erro) { //captura um erro se houver return false; //retorna false se houver um erro inesperado } return estado; //retorna o se ele está ou não na agenda } public Agenda(int contatosMaximo) { //construtor da classe Agenda com parâmetro para definir o número máximo de contatos contatos = new Contato[contatosMaximo]; //define o número máximo de contatos conforme o número passado na assinatura } } Classe Contato: public class Contato { private String nome, email; public boolean estaNaAgenda; public Contato(String nome, String email) { this.nome = nome; this.email = email; } public String getNome() { return this.nome; } public String getEmail() { return this.email; } } Método main para executar seu programa: public static void main(String[] args) { Contato jose = new Contato("José", "[email protected]"); //crio o meu contato Contato joao = new Contato("João", "[email protected]"); Agenda contatos = new Agenda(10); //crio minha agenda com um suporte para no máximo 10 contatos contatos.adicionarContato(joao); //adiciono o João contatos.adicionarContato(jose); //adiciono o contato criado anteriormente System.out.println("O contato José existe? " + contatos.buscarContato("José")); //busco se ele existe, nesse caso imprime true, pois eu acabei de adicionar ele contatos.removerContato(jose); //removo o contato criado anteriormente System.out.println("O contato João existe? " + contatos.buscarContato("João")); System.out.println("O contato José existe? " + contatos.buscarContato("José")); //busco novamente pelo José, aqui imprime false, pois eu acabei de removê-lo }
  8. Eu fiz utilizando as classes Map e HashMap. Provavelmente você ainda não aprendeu, mas é basicamente o seguinte, elas possuem uma chave, e a chave possui um valor. Nesse caso eu utilizei a chave como o nome. Aqui um vídeo que pode ajudar você com isso: Código da classe Agenda: import java.util.HashMap; import java.util.Map; public class Agenda { private Map<String, String> contatos; public String buscarContato(String nome) { return (contatos.containsKey(nome)) ? "Esse contato existe" : "Esse contato não existe"; } public void deletarContato(Contato contato) { contatos.remove(contato.nome, contato.email); } public void adicionarContato(Contato contato) { contatos.put(contato.nome, contato.email); } public Agenda() { contatos = new HashMap<>(); } } Código da classe Contato: public class Contato { public String nome, email; public Contato(String nome, String email) { this.nome = nome; this.email = email; } public Contato(String nome) { this.nome = nome; } } Código da classe para executar: public class ExecutarContatoEAgenda { public static void main(String[] args) { Contato jose = new Contato("José", "[email protected]"); Agenda agenda = new Agenda(); agenda.adicionarContato(jose); System.out.println(agenda.buscarContato("José")); agenda.deletarContato(jose); System.out.println(agenda.buscarContato("José")); } } Não é o que você pediu, mas pode te dar algumas ideias.
  9. Eu peguei de um projeto meu de quando estava aprendendo a biblioteca swing, aqui está funcionando normalmente. package labels; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; public class LabelImagem extends JFrame /*transforma essa classe em uma janela*/ { public LabelImagem() { super("Imagem em label"); //chama o construtor de JFrame e adiciona um título na janela ImageIcon icon = new ImageIcon(getClass().getResource("fotos/holo_foto.png")); //define a imagem JLabel imagem = new JLabel(); //cria a label imagem.setIcon(icon); //coloca a imagem na label getContentPane().add(imagem); //adiciona a label no container da janela setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //operação de fechamento setSize(300, 300); //tamanho da janela, 300x300 (nesse caso é o mesmo tamanho da foto que eu estou usando, mas pode ser diferente também) setResizable(false); //impede de redimensionar a janela setVisible(true); //deixa a janela visível } public static void main(String[] args) { new LabelImagem(); //chama o construtor da minha classe e abre a janela } } Fotos: - Estrutura do projeto: http://prntscr.com/mvxzgb - Foto da janela: http://prntscr.com/mvy0da Só mais uma coisa. Se você está iniciando seus estudos em Java, eu recomendo que utilize as interfaces gráficas mais para o final, depois de ver Serialização, pacote nio, herança. Pelo visto você já sabe de herança pois estou vendo o 'extends'. Enfim, recomendo estudar outras coisas antes de janelas mas é apenas uma recomendação minha, estude da maneira que for melhor para você.
  10. Coloca com interface gráfica usando JOptionPane. É bem simples e deixa mais bonito. Você também pode adicionar um tratamento de exceções pra quando o usuário digitar algo que não seja número enviar uma mensagem para ele.
  11. Você pode criar um array e colocar as temperaturas nele. Depois você pode usar o laço for para armazenar a soma das variáveis e por fim dividir pelo tamanho do array, assim obtendo a média. Para obter os valores máximo e mínimo existem várias maneiras, uma delas é usando a classe Arrays. Arrays.stream(ARRAY).max().getAsDouble(); //retorna o valor máximo em double(caso o array seja de double) de um array Arrays.stream(ARRAY).min().getAsDouble(); //retorna o valor mínimo em double(caso o array seja de double) de um array //Substitua ARRAY pelo nome do seu array
  12. Eu não utilizo muito essa área do Java, mas existem as classes utilizadas para formatação. Dentre elas há a DecimalFormat. Como exemplo eu fiz um pequeno trecho de código que formata um número pra uma casa decimal: public static void main(String[] args) { System.out.print("Digite um número: "); //pede para o usuário digitar um número Scanner s = new Scanner(System.in); //cria um objeto com a classe Scanner double dados = s.nextDouble(); //manda o usuário digitar um número e guarda ele em uma variável DecimalFormat formatador = new DecimalFormat(".#"); //cria um formatador com uma casa decimal /* faz com que o número não seja arredondado(não tenho certeza se isto está correto) */ formatador.setRoundingMode(RoundingMode.FLOOR); System.out.println(formatador.format(dados)); //formata o número eliminando as outras casas } Exemplos: http://prntscr.com/mvmc5t http://prntscr.com/mvmcau http://prntscr.com/mvmclb Você também pode explorar o RegEx (expressões regulares) Aqui um vídeo sobre isso:

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!