Na hierarquia de coleções, a interface Collection
ocupa a primeira posição, sendo suas descendentes,
as interfaces Set, Queue ( filas ) e List ( listas ).
Já mencionei em tópicos passados que a interface Set
não aceita valores duplicados, bem diferente de
List que permite que seus elementos sejam repetidos.
Neste Exemplo que trago agora mostraremos como usar HashSet,
já com uma inicialização não muito clássica,
mas muito útil para o que queremos mostrar,
que na verdade é a principal diferença entre
Set e list ambas da classe Collections
que são membros do pacote java.util.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
ocupa a primeira posição, sendo suas descendentes,
as interfaces Set, Queue ( filas ) e List ( listas ).
Já mencionei em tópicos passados que a interface Set
não aceita valores duplicados, bem diferente de
List que permite que seus elementos sejam repetidos.
Neste Exemplo que trago agora mostraremos como usar HashSet,
já com uma inicialização não muito clássica,
mas muito útil para o que queremos mostrar,
que na verdade é a principal diferença entre
Set e list ambas da classe Collections
que são membros do pacote java.util.
Veja abaixo uma imagem do programa em execução:
Veja abaixo o código do programa:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class PROJETO {
public static void main ( String [ ] args ) {
J jht = new J ( );
//superior, inferior, esquerda, direita, cor
de fundo
jht.Moldura ( 1, 24, 2, 68, 15 );
jht.title ( " " );
int i;
boolean x = false;
//Inicializando o HashSet
Set < String > frutas = new HashSet < String > ( Arrays.asList (
"Figo",
"Banana",
"Damasco",
"Caqui",
"Amora" ));
//////////////////////////////////////////////////////
//Coord x, Coord y, cor de frente, cor de
fundo
jht.poscolor ( 23, 2, 12, 15 );
System.out.printf ( "HASHSET -
SIMPLES EXEMPLO" );
jht.poscolor ( 15, 4, 9, 15 );
System.out.print ( "Abaixo a
impressão dos valores do hashSet" );
jht.poscolor ( 17, 6, 12, 15 );
System.out.print ( frutas );
//////////////////////////////////////////////////////
jht.poscolor ( 12, 8, 9, 15 );
System.out.print ( "Tentando
inserir um valor já existente no HashSet" );
jht.poscolor ( 12, 9, 9, 15 );
System.out.print ( "Podemos
inserir a fruta " );
jht.poscolor ( 36, 9, 12, 15 );
System.out.print ("Figo ");
jht.poscolor ( 41, 9, 9, 15 );
System.out.print ("no HashSet ?
=> " );
jht.textcolor ( 12 );
System.out.print ( x = frutas.add ( "Figo" ) );
//Convertendo o HashSet em ArrayList
//Ou inicializando o ArrayList com os valores
do HashSet
List < String > arrList = new ArrayList < > ( frutas );
jht.poscolor ( 16, 11, 9, 15 );
System.out.printf ( "Abaixo a
impressão normal do ArrayList" );
//
////////////////////////////////////////////
jht.poscolor ( 16, 13, 0, 15 );
for ( i = 0; i < arrList.size ( ); i++ ) {
System.out.printf ( arrList.get ( i ) );
System.out.print ( " " );
}
//////////////////////////////////////////////////////
jht.getche ( );
jht.poscolor ( 12, 15, 0, 15 );
System.out.print ( "Tentando
inserir um valor já existente no ArrayList" );
jht.poscolor ( 12, 15, 9, 15 );
System.out.print ( "Podemos
inserir a fruta " );
jht.poscolor ( 36, 15, 12, 15 );
System.out.print ("Figo ");
jht.textcolor ( 9 );
System.out.print ("no ArrayList
? => " );
jht.textcolor ( 12 );
System.out.print ( x = arrList.add ( "Figo" ) );
jht.poscolor ( 12, 17, 9, 15 );
System.out.printf ( "ArrayList com
elemento ");
jht.poscolor ( 35, 17, 12, 15 );
System.out.print ("Figo ");
jht.poscolor ( 40, 17, 9, 15 );
System.out.print ("novamente
adicionado " );
//
////////////////////////////////////////////
jht.poscolor ( 16, 19, 12, 15 );
for ( i = 0; i < arrList.size ( ); i++ ) {
System.out.printf ( arrList.get ( i ) );
System.out.print ( " " );
}
//////////////////////////////////////////////////////
//Parâmetros da função printfx
//Coord x, Coord y, String, cor de frente, cor de fundo,
//Comprimento, Tempo, frequência, duração.
//Coord x, Coord y, String, cor de frente, cor de fundo,
//Comprimento, Tempo, frequência, duração.
jht.printfx ( 23, 21, "Por: ", 12, 15, 5, 0, 1000, 200 );
jht.printfx ( 28, 21, "Samuel
Lima", 9, 15, 11, 0, 0, 0 );
jht.printfx ( 29, 23, "MUITO
OBRIGADO", 12, 15, 15, 1800, 0, 0 );
jht.getche ( );
}
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.