![]() |
|
||||
![]() 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 |
Você está aqui: Java ::: Dicas & Truques ::: Mouse e Teclado |
Entenda a interface KeyListenerQuantidade de visualizações: 12064 vezes |
Esta interface é usada para receber eventos do teclado (pressionamento de teclas). Classes interessadas em processar eventos do teclado devem implementar esta interface (e todos os seus métodos) ou extender a classe abstrata KeyAdapter (sobrescrevendo apenas os métodos de interesse). O objeto listener criado a partir desta classe é registrado no componente usando seu método addKeyListener. Veja um exemplo: Teclado teclado = new Teclado(); this.addKeyListener(teclado); Um evento do teclado é gerado quando uma tecla é pressionada, liberada ou digitada. O método relevante no objeto ouvido é então invocado e uma instância da classe KeyEvent é fornecida a ele. |
![]() |
Java ::: Dicas & Truques ::: Strings e Caracteres |
Como transformar um StringBuffer em uma String usando o método toString() da classe StringBufferQuantidade de visualizações: 99 vezes |
Como já vimos em dicas anteriores, um objeto da classe String é imutável, ou seja, quando modificamos o conteúdo de uma String, o interpretador cria um novo objeto, copiando o conteúdo da string anterior para o objeto recém-criado. Já a classe StringBuffer é mutável, ou seja, podemos modificar o seu conteúdo sem a necessidade da criação de um novo objeto. Você ficará surpreso ao saber que não podemos atribuir uma variável do tipo StringBuffer em uma variável do tipo String e vice-versa. Ao tentarmos fazer isso, os seguintes erros de compilação são exibidos: a) error: incompatible types: StringBuffer cannot be converted to String b) error: incompatible types: String cannot be converted to StringBuffer Assim, sempre que for necessário converter um StringBuffer em uma String, temos que usar o seu método toString(). Veja: ---------------------------------------------------------------------- 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; // Este exemplo mostra como converter um // StringBuffer em uma String public class Estudos{ public static void main(String[] args){ StringBuffer frase = new StringBuffer("Programação Java"); String resultado = frase.toString(); System.out.println(resultado); System.exit(0); } } |
Java ::: Java para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular o produto escalar entre dois vetores usando Java - Geometria Analítica e Álgebra Linear usando JavaQuantidade de visualizações: 3209 vezes |
O produto escalar (em inglês: dot product) entre dois vetores é um número real que relaciona o comprimento desses dois vetores e o ângulo formado por eles. É importante notar que alguns autores se referem ao produto escalar como produto interno. Obtém-se o produto escalar entre dois vetores, no R2, ou três vetores, no R3, por meio da fórmula a seguir (assumindo dois vetores __$\vec{u} = (a, b)__$ e __$\vec{v} = (c, d)__$ no R2). \[\vec{u} \cdot \vec{v} = a \cdot c + b \cdot d \] Vamos agora a um exemplo prático. Veja a imagem abaixo, na qual temos dois vetores, com suas coordenadas e magnitudes (módulo, comprimento ou norma): ![]() Note que ambos os vetores possuem como origem as coordenadas (0, 0). O primeiro vetor possui as coordenadas finais (4, 10) e magnitude 11, e o segundo vetor possui as coordenadas finais (11, 6) e magnitude 13. Magnitude é o tamanho do vetor, ou seja, seu comprimento, seu módulo ou norma. Veja agora o código Java completo que lê as coordenadas dos dois vetores e calcula e mostra o produto escalar entre eles: ---------------------------------------------------------------------- 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.Scanner; public class Estudos{ public static void main(String[] args){ Scanner entrada = new Scanner(System.in); // x e y do primeiro vetor System.out.print("Coordenada x do primeiro vetor: "); float x1 = Float.parseFloat(entrada.nextLine()); System.out.print("Coordenada y do primeiro vetor: "); float y1 = Float.parseFloat(entrada.nextLine()); // x e y do segundo ponto System.out.print("Coordenada x do segundo vetor: "); float x2 = Float.parseFloat(entrada.nextLine()); System.out.print("Coordenada y do segundo vetor: "); float y2 = Float.parseFloat(entrada.nextLine()); // vamos calcular o produto escalar float pEscalar = (x1 * x2) + (y1 * y2); // mostramos o resultado System.out.println("O produto escalar é: " + pEscalar); } } Ao executar este código Java nós teremos o seguinte resultado: Coordenada x do primeiro vetor: 4 Coordenada y do primeiro vetor: 10 Coordenada x do segundo vetor: 11 Coordenada y do segundo vetor: 6 O produto escalar é: 104.0 |
Java ::: Java para Engenharia ::: Unidades de Medida |
Como converter Metros Quadrados em Quilômetros Quadrados em Java - Java para Física e EngenhariaQuantidade de visualizações: 341 vezes |
Em muitas situações nós temos uma medida de área em m2 e queremos transformá-la em km2, ou seja, converter Metros Quadrados para Quilômetros Quadrados. Para isso só precisamos dividir os metros quadrados por 1.000.000. Veja a fórmula: \[\text{Quilômetros Quadrados} = \frac{\text{Metros Quadrados}}{1.000.000} \] Agora veja o código Java que pede para o usuário informar a medida de área em metros quadrados e a converte para quilômetros quadrados. Note que mostrei como exibir o resultado em notação científica e sem notação científica: ---------------------------------------------------------------------- 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) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos ler a medida em metros quadrados System.out.print("Informe os metros quadrados: "); double m_quadrados = Double.parseDouble(entrada.nextLine()); // agora calculamos os quilometros quadrados double km_quadrados = m_quadrados / 1000000.00; // e mostramos o resultado System.out.println("Você informou " + m_quadrados + " metros quadrados."); System.out.println("Isso equivale a " + km_quadrados + " quilometros quadrados."); System.out.printf("Sem notação científica: %f\n", km_quadrados); } } Ao executar este código Java nós teremos o seguinte resultado: Informe os metros quadrados: 80 Você informou 80.0 metros quadrados. Isso equivale a 8.0E-5 quilômetros quadrados. Sem notação científica: 0,000080 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Declarar e construir um vetor de inteiros e usar um laço for para inicializar seus elementos com os valores de 1 até 10 em JavaQuantidade de visualizações: 17348 vezes |
Pergunta/Tarefa: Escreva um programa Java que declara e constrói um array de 10 elementos do tipo int. Em seguida use um laço for para inicializar os elementos com os valores de 1 até 10. Para finalizar exiba os valores dos elementos do vetor na vertical. Seu programa deverá exibir a seguinte saída: 1 2 3 4 5 6 7 8 9 10 A resolução desta tarefa passa pela declaração e construção do array. Aqui eu demonstro como isso pode ser feito em dois passos. Primeiro a declaração e depois a construção: // vamos declarar um vetor de 10 ints int valores[]; // vamos construir o vetor...neste momento seus elementos // terão, todos, o valor 0 valores = new int[10]; Veja a resolução completa do exercício: ---------------------------------------------------------------------- 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){ // vamos declarar um array de 10 ints int valores[]; // vamos construir o array...neste momento seus elementos // terão, todos, o valor 0 valores = new int[10]; // vamos usar o laço for para inicializar seus elementos // com os valores de 1 até 10 for(int i = 0; i < valores.length; i++){ // aqui nós usamos o valor da variável i para acessar o // elemento do array e também para atribuir o valor de i + 1 // ao elemento sendo acessado valores[i] = (i + 1); } // só nos resta exibir os valores de todos os elementos for(int i = 0; i < valores.length; i++){ System.out.println(valores[i]); } } |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Um programa que lê um salário e concede um aumento de 20% para os salários inferiores a R$ 800,00Quantidade de visualizações: 4727 vezes |
Exercícios Resolvidos de Java - Um programa que lê um salário e concede um aumento de 20% para os salários inferiores a R$ 800,00 Pergunta/Tarefa: A empresa XYZ decidiu conceder um aumento de 20% aos funcionários com salários inferiores a R$ 800,00. Faça um programa Java que solicita o salário do funcionário e mostre o valor do salário reajustado ou uma mensagem, caso o funcionário não tenha direito ao aumento. Sua saída deverá ser parecida com: Informe o salário: 520 O salário informado foi: 520.0 O salário reajustado é: 530.4 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 solicitar o salário do funcionário System.out.print("Informe o salário: "); double salario = Double.parseDouble(entrada.nextLine()); System.out.println("O salário informado foi: " + salario); // vamos conceder o aumento ao salário inferior a 800,00 if(salario < 800.00){ double novoSalario = salario + (salario * (2.0 / 100.00)); System.out.println("O salário reajustado é: " + novoSalario); } else{ System.out.println("Não tem direito ao reajuste."); } System.out.println("\n"); } } |
Java ::: Estruturas de Dados ::: Lista Ligada Simples |
Estruturas de Dados em Java - Como obter a quantidade de nós em uma lista singularmente ligada usando JavaQuantidade de visualizações: 7032 vezes |
Em algumas situações precisamos obter a quantidade de nós em uma lista singularmente ligada. Nesta dica eu mostro como isso pode ser feito. Aqui estou assumindo que você criou uma lista singularmente ligada que possui dois nós gerenciadores, ou seja, uma referência para o primeiro nó na lista e uma referência para o último nó. Veja o código para um método que retorna a quantidade de nós na lista: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- // método que permite exibir os valores de // todos os nós da lista public int tamanho() { int tam = 0; // representa a quantidade de nós na lista // vamos obter uma referência ao início da lista No no = inicio; while (no != null) { // enquanto a lista não estiver vazia tam++; // incrementamos a variável tam no = no.proximo; // pula para o nó seguinte } return tam; } Veja como podemos chamar este nó a partir da classe principal da aplicação (Main.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 ---------------------------------------------------------------------- public class Main { public static void main(String[] args) { // vamos criar uma nova lista Lista lista = new Lista(); // insira alguns nós no início ou no final // da lista // exibe a quantidade de nós na lista System.out.println("A lista possui " + lista.tamanho() + " nós"); } } Ao executar a aplicação você terá um resultado parecido com: A lista possui 4 nós. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Exercício Resolvido de Java - Como simplificar frações em JavaQuantidade de visualizações: 692 vezes |
Pergunta/Tarefa: Simplificar uma fração consiste em reduzir o numerador e o denominador por meio da divisão pelo máximo divisor comum aos dois números. Uma fração está totalmente simplificada quando verificamos que seus termos estão totalmente reduzidos a números que não possuem termos divisíveis entre si. Uma fração simplificada sofre alteração do numerador e do denominador, mas seu valor matemático não é alterado, pois a fração, quando tem seus termos reduzidos, torna-se uma fração equivalente. Escreva um programa Java que pede para o usuário informar o numerador e o denominador de uma fração e mostre a fração simplificada. Use uma classe Fracao para a operação de simplificação. Em outras seções do nosso site você encontra o cálculo do MDC para encontrar o Máximo Divisor Comum. Sua saída deverá ser parecida com: Informe o numerador: 32 Informe o denominador: 40 A fração gerada foi: 32/40 A fração simplificada é: 4/5 Veja a resolução comentada deste exercício em 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) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar o numerador System.out.print("Informe o numerador: "); int numerador = Integer.parseInt(entrada.nextLine()); // vamos pedir para o usuário informar o denominador System.out.print("Informe o denominador: "); int denominador = Integer.parseInt(entrada.nextLine()); // vamos criar um objeto da classe Fracao Fracao f = new Fracao(numerador, denominador); // vamos mostrar a fração gerada System.out.println("A fração gerada foi: " + f.toString()); // agora vamos simplificar esta fração System.out.println("A fração simplificada é: " + f.simplificar().toString()); } } // classe usada para representar uma Fração class Fracao{ int numerador; int denominador; // construtor da classe public Fracao(int numerador, int denominador) { this.numerador = numerador; this.denominador = denominador; } // método que simplifica a fração atual e retorna o // resultado como uma fração public Fracao simplificar(){ // cria uma fração temporária Fracao temp = new Fracao(this.numerador, this.denominador); // descobrimos que é maior, o numerador ou o // denominador int n = temp.numerador, d = temp.denominador, maior; // o numerador é menor que 0? if (temp.numerador < 0) { n = -temp.numerador; } // descobrimos o maior if (n > d) { maior = n; } else { maior = d; } // encontramos o maior número que divide o numerador e o // denominador int mdc = 0; for (int i = maior; i >= 2; i--) { if ((temp.numerador % i == 0) && (temp.denominador % i == 0)) { mdc = i; break; } } // agora dividimos tanto o numerador quanto o denominador // pelo mdc encontrado if (mdc != 0) { temp.numerador = temp.numerador / mdc; temp.denominador = temp.denominador / mdc; } // retorna a fração temporária return temp; } // retorna uma representação textual dessa fração @Override public String toString() { return this.numerador + "/" + this.denominador; } } |
Java ::: Classes e Componentes ::: JComponent |
Java Swing - Como usar a classe JComponent em suas aplicações Java SwingQuantidade de visualizações: 11957 vezes |
A classe JComponent serve como classe base abstrata a partir da qual todos os componentes Swing herdam suas funcionalidades. Esta classe herda da Classe Container, que por sua vez herda de Component, que herda de Object. Várias classes do Java Swing herdam de JComponent, direta ou indiretamente. Por exemplo, a classe JButton herda de javax.swing.AbstractButton, que, por sua vez, herda de javax.swing.JComponent. Entender o papel da classe JComponent é muito importante, pois nos permite o uso de polimorfismo e também de vários design patterns. Sendo assim, analise o seguinte código Java Swing: ---------------------------------------------------------------------- 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.awt.*; import javax.swing.*; public class Estudos extends JFrame{ public Estudos() { super("Minha primeira aplicação GUI"); // vamos declarar um objeto da classe JComponent // e atribuir a ele um JButton JComponent btn = new JButton("Clique Aqui"); getContentPane().add(btn, BorderLayout.SOUTH); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Veja que declaramos uma variável do tipo JComponent e atribuímos a ela um objeto da classe JButton. Isso é perfeitamente possível, já que JButton herda de JComponent, ainda que indiretamente. Entre as classes que herdam de JComponent estão: AbstractButton, BasicInternalFrameTitlePane, Box, Box.Filler, JColorChooser, JComboBox, JFileChooser, JInternalFrame, JInternalFrame.JDesktopIcon, JLabel, JLayeredPane, JList, JMenuBar, JOptionPane, JPanel, JPopupMenu, JProgressBar, JRootPane, JScrollBar, JScrollPane, JSeparator, JSlider, JSpinner, JSplitPane, JTabbedPane, JTable, JTableHeader, JTextComponent, JToolBar, JToolTip, JTree, JViewport. |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Água Fria: Sistemas de distribuição Tendo em vista a função a que se destina, a tubulação de uma instalação predial de abastecimento de água fria recebe nomes distintos ao longo do trajeto da água: sub-ramais, ramais, barriletes e colunas de distribuição. Ramal é: A) A ligação final com a peça de utilização. B) A ligação entre a coluna de distribuição e os ramais. C) A tubulação que se origina nos reservatórios. D) A ligação entre as colunas de distribuição e os sub-ramais. E) Ligação entre o barrilete e os pontos de utilização. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual das formas abaixo é usada para criar uma TUPLA (TUPLE) em Python? A) valores = {5, 1, 9, 4} B) valores = [5, 1, 9, 4] C) valores = (5, 1, 9, 4) D) valores = [5.. 1.. 9.. 4] E) valores = tuple[5, 1, 9, 4] Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Materiais empregados para instalação de água fria e esgoto Os materiais utilizados em tubulação de água fria têm evoluído muito nos últimos anos, acompanhando a evolução tecnológica da Ciência dos Materiais. Os canos de água fria HDPE - polietileno - apresentam vantagens significativas. Assinale a alternativa que contém uma delas: A) São rígidos e, por isso, suportam grandes cargas, podendo ser usados com pouca espessura de parede. B) Podem ser pintados na cor desejada, o que reduz o custo na hora da marcação na obra. C) São mais leves do que as tubulações metálicas e flexíveis, além de terem uma vida útil superior quanto à resistência à oxidação. D) Elevada ductilidade e capacidade de serem soldados apenas por fricção, o que aumenta a resistência mecânica da junta. E) São de cor marrom, sendo utilizados para esgoto, a temperaturas de até 20ºC e escoamento de 75m.c.a. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
Qual dos rios, entre os listados abaixo, não está localizado no território brasileiro? A) Rio São Francisco. B) Rio Tocantins. C) Rio Orinoco. D) Rio Araguaia. E) Rio Paraíba do Sul. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Revestimentos: técnicas construtivas Qual alternativa está correta em relação aos cuidados necessários com os materiais antes do início do assentamento das cerâmicas? A) Deve-se prever a compra de duas peças a mais dos revestimentos cerâmicos, pensando-se nos acidentes que possam ocorrer, como trocas e reparos das peças. B) É fundamental comprar os revestimentos cerâmicos em lojas diferentes ou fornecedores diferentes, pois há uma grande variação de preço entre as empresas. C) É fundamental ler as recomendações dos fabricantes dos materiais a serem usados, pois existe uma vasta gama de produtos no mercado e é necessário saber para quais ambientes o produto é indicado. D) É imprescindível que o local onde os materiais ficam estocados até o início das obras seja limpo e seco. A fim de facilitar a retirada desses materias e organizar melhor os espaços, deve-se sempre empilhar as caixas com cerâmicas. E) Em obras de grande porte, após a compra dos revestimentos cerâmicos, a construtora deve exigir a entrega em um único frete à empresa fornecedora. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, 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 |