Você está aqui: Java ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como criar laços while infinitos em JavaQuantidade de visualizações: 9582 vezes |
Laços while infinitos em Java podem ser criado da seguinte forma: while(true){ // bloco de instruções } import javax.swing.JOptionPane; public class Estudos{ public static void main(String[] args) { int valor; int soma = 0; // Lê continuamente até o usuário informar 0 while(true){ // efetua a próxima leitura String str = JOptionPane.showInputDialog(null, "Informe um valor inteiro:\n(ou 0 para sair)", "Estudos", JOptionPane.QUESTION_MESSAGE); valor = Integer.parseInt(str); // testa se o laço pode ser finalizado if(valor == 0) break; soma += valor; } JOptionPane.showMessageDialog(null, "A soma é: " + soma, "Estudos", JOptionPane.INFORMATION_MESSAGE); } } |
![]() |
Java ::: Java Swing - Gerenciadores de Layout ::: GridBagLayout |
Como criar uma tela de login usando o gerenciador de layout GridBagLayout do Java SwingQuantidade de visualizações: 35456 vezes |
Temos que aceitar o fato de que o uso de uma IDE visual facilita muito o trabalho de criação de interfaces gráficas (GUI). Contudo, é muito bom poder escrever telas via código mesmo. E o gerenciador de layout GridBagLayout possibilita a criação de layouts realmente avançados. O trecho de código abaixo mostra como criar uma tela de login usando este gerenciador. Guarde este código. Ele poder ser útil na criação de outros formulários: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import javax.swing.*; import javax.swing.border.*; import java.awt.*; public class Estudos extends JFrame{ public Estudos(){ super("Tela de login usando GridBagLayout"); // define o layout setLayout(new GridBagLayout()); // define uma borda para aumentar o espaço // entre as bordas da janela e o gerenciador // de layout ((JComponent)getContentPane()).setBorder( new EmptyBorder(5, 8, 8, 8)); // cria o GridBagConstraints GridBagConstraints gbc = new GridBagConstraints(); // controla o espaço entre os componentes // e as linhas do GridBagLayout. // aqui nós definimos 3 pixels para os // lados de cima, esquerda, inferior e direita gbc.insets = new Insets(3, 3, 3, 3); // adiciona componentes à janela // esta primeira JLabel ocupará duas células // na primeira linha gbc.gridy = 0; // linha gbc.gridx = 0; // coluna gbc.gridwidth = 2; // duas células na linha // alinha o label à esquerda gbc.anchor = GridBagConstraints.WEST; JLabel infoLabel = new JLabel("Dados do Usuário:"); // vamos aumentar a fonte da JLabel infoLabel.setFont(new Font("SansSerif", Font.BOLD, 14)); // vamos adicionar um espaço extra na parte // inferior da JLabel infoLabel.setBorder( new EmptyBorder(0, 0, 5, 0)); add(infoLabel, gbc); gbc.gridy = 1; // linha gbc.gridx = 0; // coluna gbc.gridwidth = 1; // cria a label do usuário JLabel usuarioLabel = new JLabel("Usuário:"); add(usuarioLabel, gbc); gbc.gridy = 1; // linha gbc.gridx = 1; // coluna // cria a JTextField do usuário JTextField usuarioTxt = new JTextField(13); add(usuarioTxt, gbc); gbc.gridy = 2; // linha gbc.gridx = 0; // coluna // cria a label da senha JLabel usuarioSenha = new JLabel("Senha:"); add(usuarioSenha, gbc); gbc.gridy = 2; // linha gbc.gridx = 1; // coluna // cria a JPasswordField da senha JPasswordField senhaTxt = new JPasswordField(13); add(senhaTxt, gbc); gbc.gridy = 3; // linha gbc.gridx = 1; // coluna gbc.gridwidth = 2; // duas células na linha // alinha os botões à direita gbc.anchor = GridBagConstraints.EAST; JPanel botoesPanel = new JPanel(); botoesPanel.add(new JButton("Cancelar")); botoesPanel.add(new JButton("OK")); add(botoesPanel, gbc); pack(); // ajusta o tamanho da janela ao // dos componentes setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Ao executar este código Java Swing nós teremos o seguinte resultado: ![]() |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
||||
Exercícios Resolvidos de Java - Como converter decimal em binário em Java usando o laço whileQuantidade de visualizações: 6583 vezes |
||||
Pergunta/Tarefa: Escreva um programa Java que usa o laço while para converter um número decimal em sua representação binária. Peça ao usuário para informar um número inteiro e mostre o mesmo em binário (como uma String). Você deve obrigatoriamente usar o laço while. Sua saída deverá ser parecida com: Informe um número decimal: 38 A representação binária é 100110 Veja a resolução comentada deste exercício usando Java:
| ||||
Java ::: Dicas & Truques ::: Fuso Horários |
Como representar fuso horário em Java usando a classe TimeZoneQuantidade de visualizações: 12942 vezes |
A classe abstrata TimeZone (do pacote java.util) representa um determinado fuso horário e também identifica o horário de verão (daylight savings) de um determinado país ou região. Veja sua posição na hierarquia de classes Java:java.lang.Object java.util.TimeZone A melhor forma de entender o fuso horário, é consultando suas configurações regionais no Painel de Controle de seu sistema. É comum, em máquinas brasileiras encontrarmos o fuso horário "GMT -03:00 - Brasilia". Isso quer dizer que a hora oficial do Brasil é -3 horas em relação ao horário de Greenwich, Londres. Não podemos nos esquecer do horário de verão, que reduz esta diferença para -2 horas na maior parte do país. Por padrão, A JVM detecta e trabalha com o fuso horário da máquina na qual está sendo executada. Veja um trecho de código que obtém este TimeZone padrão: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- import java.util.*; public class Estudos{ public static void main(String args[]){ TimeZone timeZone = TimeZone.getDefault(); System.out.println(timeZone.getDisplayName()); System.out.println(timeZone.getID()); } } Ao executar este código você terá um resultado semelhante à: Brasilia Time America/Sao_Paulo Aqui nós usamos o método estático getDefault() para retornar o TimeZone padrão e os métodos de instância getDisplayName() e getID() para obter as informações sobre o fuso horário. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
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 |