Java ::: Classes e Componentes ::: JList |
Java Swing - Como obter a quantidade de itens em uma JList usando o método getSize() da interface ListModelQuantidade de visualizações: 10121 vezes |
|
Nesta dica mostrarei como podemos obter a quantidade de itens em uma JList por meio de uma chamada ao método getSize() da interface ListModel, responsável por gerenciar os itens da JList. Note que escrevi o exemplo abaixo sem usar nenhum editor GUI visual. Dessa forma fica mais fácil entender todas as partes que compoem uma aplicação Java Swing. Veja o código completo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
JList lista;
public Estudos() {
super("A classe JList");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria os itens da lista
String nomes[] = {"Carlos", "Marcelo", "Fabiana",
"Carolina", "Osmar"};
// Cria a JList
lista = new JList(nomes);
// Um botão que permite obter a quantidade de itens
JButton btn = new JButton("Quantidade de Itens");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
int quant = lista.getModel().getSize();
JOptionPane.showMessageDialog(null,
"A lista contém " + quant + " itens");
}
}
);
// Adiciona a lista à janela
c.add(new JScrollPane(lista));
// Adiciona o botão à janela
c.add(btn);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Java ::: Coleções (Collections) ::: HashSet |
Java Collections - Como usar a classe HashSet em seus programas JavaQuantidade de visualizações: 5793 vezes |
A classe HashSet, no pacote java.util, é uma classe concreta que implementa a interface Set. Na maioria das vezes nós usamos objetos desta classe para armazenar elementos não duplicados (ainda que o elemento null seja permitido). Veja sua posição na hierarquia de classes da plataforma Java:
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractSet<E>
java.util.HashSet<E>
Veja um trecho de código no qual inserimos cinco elementos do tipo String em um HashSet e os listamos em seguida:
package estudos;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class Estudos{
public static void main(String[] args) {
// vamos criar uma instância da classe HashSet
Set<String> conjunto = new HashSet<>();
// vamos inserir cinco Strings neste conjunto
conjunto.add(null); // o elemento null é permitido
conjunto.add("Marcos");
conjunto.add("Osmar");
conjunto.add("Osmar"); // elemento duplicado aqui
conjunto.add("Fernanda");
// vamos exibir os elementos
Iterator iterator = conjunto.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
}
Ao executarmos este código teremos o seguinte resultado: null Fernanda Marcos Abel Osmar |
Java ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Tutorial Java para iniciantes - Como usar o laço for em JavaQuantidade de visualizações: 22018 vezes |
O laço for (loop for, ou laço para) é de longe uma das estruturas de controle mais usadas, não só em Java como em várias linguagens de programação). A razão de seu sucesso é a facilidade com que podemos efetuar iterações controladas por um contador ou uma variável similar, que é atualizada a cada iteração. Veja sua sintáxe:
for(passo 1; passo 2; passo 3){
// bloco de instruções
}
passo 1: É aqui que definimos a variável de controle. Esta variável pode também ser declarada antes do laço, mas nunca em seu corpo. passo 2: Aqui testamos a condição de continuidade do laço. Se a condição retornar verdadeira, a execução do laço continua. Do contrário esta é interrompida. passo 2: Nesta parte nós incrementamos ou decrementamos a variável de controle. É importante perceber que podemos ter mais de uma instruções nos passos 1 e 3 de uma laço for, basta separá-las por vírgulas. Veja um exemplo no qual usamos um laço for para imprimir os números de 0 a 10:
public class Estudos{
public static void main(String[] args){
for(int i = 0; i <= 10; i++){
System.out.println(i);
}
}
}
Veja agora como efetuar a operação inversa, ou seja, imprimir os números em ordem decrescente:
public class Estudos{
public static void main(String[] args) {
for(int i = 10; i >= 0; i--){
System.out.println(i);
}
}
}
Para finalizar veja como podemos imprimir os números pares de 0 a 10:
public class Estudos{
public static void main(String[] args) {
for(int i = 0; i <= 10; i += 2){
System.out.println(i);
}
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Java - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 13856 vezes |
|
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Java que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos fazer a leitura usando a classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos ler o primeiro lado do triângulo
System.out.print("Informe o primeiro lado do triângulo: ");
int ladoA = Integer.parseInt(entrada.nextLine());
// vamos ler o segundo lado do triângulo
System.out.print("Informe o segundo lado do triângulo: ");
int ladoB = Integer.parseInt(entrada.nextLine());
// vamos ler o terceiro lado do triângulo
System.out.print("Informe o terceiro lado do triângulo: ");
int ladoC = Integer.parseInt(entrada.nextLine());
// os lados informados formam um triângulo?
if((ladoA < (ladoB + ladoC)) && (ladoB < (ladoA + ladoC))
&& (ladoC < (ladoA + ladoB))){
// é um triângulo equilátero (todos os lados iguais)?
if((ladoA == ladoB) && (ladoB == ladoC)){
System.out.println("O triângulo é equilátero");
}
else{
// é isósceles (dois lados iguais e um diferente)?
if((ladoA == ladoB) || (ladoA == ladoC) || (ladoC == ladoB)){
System.out.println("O triângulo é isósceles");
}
else{
// é escaleno
System.out.println("O triângulo é escaleno");
}
}
}
else{
System.out.println("Os lados informados não formam um triângulo.");
}
}
}
|
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Python - Como criar um relógio analógico no Pygame - Código completo com variáveis e comentários em português LISP - Como converter Coordenadas Cartesianas para Coordenadas Polares em LISP - LISP para Engenharia |
Nossas 20 dicas & truques de programação mais recentes |
Ú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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






