Pessoal estive procurando pelo forum e não achei nada parecido com meu problema.
Seguinte tenho um exercicio para ser feito sobre ArrayList onde o programa deve incluir, consultar e excluir intes de um ArrayList e tem que ser com o ADD e Remove. Estou tendo problema para incluir itens no ArrayList e não faço a minima ideia de fazer a consulta. Veja o que podem ser feito e a onde eu estou errando.
Abaixo está o codigo( horrivel)…
![:cry: :cry:](https://www.guj.com.br/images/emoji/twitter/cry.png?v=9)
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Ex02 {
public static void main(String[] args) {
ArrayList vdados = new ArrayList();
int vopcao=0;
int vnum=0;
String vmenu = "1- Incluir\n" +
"2- Consultar\n" +
"3- Excluir\n" +
"4- Sair\n" ;
while(vopcao != 4 ){
try
{
vopcao=(Integer.parseInt(JOptionPane.showInputDialog(vmenu)));
switch(vopcao)
{
case 1:
vdados.add(JOptionPane.showInputDialog("Informe o nome"));
System.out.println(vdados.get(vnum));
break;
case 2:
System.out.println(vnum);
break;
case 3:
vdados.remove(JOptionPane.showInputDialog("Digite um valor de 0 a 5"));
System.out.println(vdados.remove(vnum));
break;
}
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null,"Digite somente numero (1,2,3,4)");
}
}
}
}
[size=“11”]
[color=“red”]
- Editado: Aumente as chances de alguém responder o seu tópico. Use BBCode em seus códigos para mantê-los identados e mais legíveis para outros usuários. - Matheus[/color][/size] :joia:
Fala cara td bem!?
Então, na verdade você estava incluindo sim usuário no seu ArrayList acredito que você estava imprimindo errado e por isso não conseguia fazer a visualização deles…
E quanto a consulta, ai sim estava errada dei uma modificada no código, mas somente para dar uma luz a você…pra vc entender o que deve fazer!
Não olhei o excluir ok?!
Falou espero que ajude
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Ex02 {
public static void main(String[] args) {
ArrayList vdados = new ArrayList();
int vopcao=0;
int vnum=0;
int consulta=0;
String vmenu = "1- Incluir\n" +
"2- Consultar\n" +
"3- Excluir\n" +
"4- Sair\n" ;
while(vopcao != 4 ){
try
{
vopcao=(Integer.parseInt(JOptionPane.showInputDialog(vmenu)));
switch(vopcao)
{
case 1:
vdados.add(JOptionPane.showInputDialog("Informe o nome"));
System.out.println(vdados);
break;
case 2:
consulta=(Integer.parseInt(JOptionPane.showInputDialog("Informe qual cadastro deseja ver lembrando que os cadastros começam no 0")));
System.out.println(vdados.get(consulta));
break;
case 3:
vdados.remove(JOptionPane.showInputDialog("Digite um valor de 0 a 5"));
System.out.println(vdados.remove(vnum));
break;
}
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null,"Digite somente numero (1,2,3,4)");
}
}
}
}
Dumestico
:lol:
Valeu pela força era assim mesmo que tem que funcionar, quanto ao excluir eu to me virando.
Mais uma vez Obrigado...
Opa, tamo ai pra se ajuda!
![:wink: :wink:](https://www.guj.com.br/images/emoji/twitter/wink.png?v=9)
Falou!
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Ex02 {
public static void main(String[] args) {
ArrayList vdados = new ArrayList();
int vopcao=0;
int vnum=0;
int consulta=0;
String vmenu = "1- Incluir\n" +
"2- Consultar\n" +
"3- Excluir\n" +
"4- Sair\n" ;
while(vopcao != 4 ){
try
{
vopcao=(Integer.parseInt(JOptionPane.showInputDialog(vmenu)));
switch(vopcao)
{
case 1:
vdados.add(JOptionPane.showInputDialog("Informe o nome"));
System.out.println(vdados);
break;
case 2:
consulta=(Integer.parseInt(JOptionPane.showInputDialog("Informe qual cadastro deseja ver lembrando que os cadastros começam no 0")));
System.out.println(vdados.get(consulta));
break;
case 3:
vdados.remove(JOptionPane.showInputDialog("Informe qual cadastro deve ser excluido lembrando que os cadastros começam no 0"));
System.out.println(vdados.remove(vnum));
break;
}
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null,"Digite somente numero (1,2,3,4)");
}
}
}
}
Ola Eu estive tendando melhorar esse codigo (acima) no que diz respeito a menagens do tipo AVISO.
Como eu faço para dizer ao usuario que os indices que ele ira consultar não existe. Segue o codigo abaixo:
case 2:
consulta=(Integer.parseInt(JOptionPane.showInputDialog(“Informe qual cadastro deseja ver lembrando que os cadastros começam no 0”)));
System.out.println(vdados.get(consulta));
break;
Aqui o usuario ira fazer uma consulta mais se o indice que ele pesquisar, exemplo 5 não estiver no ArrayList , seria apropriado aparecer uma mensagem de aviso do Tipo: Indice não encotrado ou outra qualquer e voltar para a caixa novamente.
Para isso eu deve usar o length junto com for ou ARRAY_SIZE?
O mesmo se aplica na opção 3. Segue codigo abaixo:
case 3:
vdados.remove(JOptionPane.showInputDialog(“Digite um valor de 0 a 5”));
System.out.println(vdados.remove(vnum));
break;
Aqui o usuario ira informa qual idince deverar ser excluido. Se ele excluir todos devera aparecer uma mensagem informado que o Array está vazio, ou algo parcecido.
Gostaria de me disse qual o procedimento, se para isso deveria usar um IF ou For ou outro comando que não conheço.
FIcarei grato por qualquer luz .
Cara,
Não sou muito bom nisso, mas tenta os códigos abaixo:
Depois disso, faz isso no case 1, oh:
vdados.add(JOptionPane.showInputDialog("Informe o nome"));
System.out.println(vdados.get(vdados.size()));
Então faz isso no case 2:
vnum = rl.readLine();
System.out.println(vdados.get(vnum));
No case 3, faz isso:
vnum = JOptionPane.showInputDialog("Digite um valor de 0 a 5"));
if(vdados.remove(vnum))
// Removido com sucesso!
else
// Erro ao remover!
Qq coisa, tamu aí!
Vlw!
OHADES
Vou testar logo, logo, se não der certo não vai ter problema nehum, agradeço pela ajuda.
Obrigado mesmo.
Infleimente não funcionou a dicas citada pelo OHADES , a expressão i
f(vdados.remove(vnum)) não está sendo reconhecida e fiz refiz de outro jeito mais não deu certo.
Eu so não estou decobrindo qual variavel eu tenho que utilizar para mostrar as mensagens no case 2 e case 3.
Mais mesmo assim valeu pela ajuda, eu so queria deixar o codigo mais redondo, não é preciso dar as mensagens.
Fui
[code]import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Ex02 {
public static void main(String[] args) {
ArrayList vdados = new ArrayList();
int vopcao=0;
int vnum=0;
int consulta=0;
String vmenu = “1- Incluir\n” +
“2- Consultar\n” +
“3- Excluir\n” +
“4- Sair\n” ;
while(vopcao != 4 ){
try
{
vopcao=(Integer.parseInt(JOptionPane.showInputDialog(vmenu)));
switch(vopcao)
{
case 1:
vdados.add(JOptionPane.showInputDialog(“Informe o nome”));
System.out.println(vdados);
break;
case 2:
consulta=(Integer.parseInt(JOptionPane.showInputDialog(“Informe qual cadastro deseja ver lembrando que os cadastros começam no 0”)));
System.out.println(vdados.get(consulta));
break;
case 3:
vnum=(Integer.parseInt(JOptionPane.showInputDialog(“Informe qual cadastro deve ser excluido lembrando que os cadastros começam no 0”)));
System.out.println(vdados.remove(vnum));
break;
}
}
catch(NumberFormatException e)
{
JOptionPane.showMessageDialog(null,“Digite somente numero (1,2,3,4)”);
}
catch(IndexOutOfBoundsException e)
{
JOptionPane.showMessageDialog(null,“Não existe esse elemento!”);}
}
System.exit(0);
}
}[/code]
:lol: :lol:
Ola
[b]JavaDrops[/b] valeu pla força está ok, putis so tinha que acrecentar mais uma linha e pronto ba e eu quabrando a cabeça.
Muito obrigado a todos.
Até… ![:wink: :wink:](https://www.guj.com.br/images/emoji/twitter/wink.png?v=9)