Bom galera eu procurei no fórum, até tem um jeito mas não é o jeito que eu preciso
e que eu estou apanhando para fazer…
eu não sei usar array direito, até já fiz outra pergunta aqui no fórum ontem e me ajudaram
para listar todos os itens do array eu faço
for (int i=0; i<cc.getTamanho(); i++){
System.out.print(cc.getValor(i)+" ");}
System.out.println("");
e ele mostra os itens, as partes vazias do array ele completa com 0. (isso é normal? :shock: )
então para “remover” um item do array, o professor quer que eu faça um decremento da variavel indice :?
eu já quebrei a cabeça de todas as formas e não consegui, alguém pode me dar uma luz? ou duas?
[code]import java.util.Arrays;
public class NovoArray{
protected int[]a;
int indice=0;
NovoArray(int tamanho){
a = new int[tamanho];
}
public int getIndice(){
return indice;
}
public void addItem(int numero){
if(getIndice()<a.length){
a[getIndice()] = (int)(numero);
indice++;
}
}
public int removeItem(int numero){
return indice=numero;
}
public boolean getListaCheia(){
if(getIndice()<a.length){
return false;
}
else{
return true;
}
}
public int mostraMaior(){
int maior=a[0];
for (int i=0; i<a.length;i++)
if (maior<a[i])
maior=a[i];
return maior;
}
public int mostraMenor(){
int menor=a[0];
for (int i=0; i<a.length;i++)
if (menor>a[i])
menor=a[i];
return menor;
}
public int mostraUltimo(){
if (indice == 0){
return 0;
}
else{
return a[indice - 1];
}
}
public int getTamanho(){
return (int)(a.length);
}
public int getValor(int posicao){
return a[posicao];
}
public void procuraElemento(int elemento){
boolean exist = false;
for (int i=0; i<getTamanho(); i++)
if(getValor(i)==elemento){
exist=true;
break;
}
if(exist){
System.out.println("EXISTE");
}
else{
System.out.println("NAO EXISTE");
}
}
}//ultima chave
[/code]
Aplicação
[code]import java.util.Scanner;
public class AplicNovoArray {
public static void main(String[] args) {
Scanner entrada;
entrada = new Scanner(System.in);
int t,escolha,item,repetir,elemento;
System.out.println("Digite o valor do tamanho do array:");
t = entrada.nextInt();
NovoArray cc=new NovoArray(t);
do{ System.out.println("Menu: \n 1-Inserir Item \n 2-Remover Item \n 3-Mostrar Ultimo Item do Array \n 4-Mostrar todos Itens \n 5-Mostrar Maior \n 6-Mostrar Menor \n 7-Buscar Elemento \n 8-Mostra tamanho array \n 9-Sair ");
escolha = entrada.nextInt();
switch(escolha){
case 1:
do{
if(cc.getListaCheia()){
System.out.println("Array cheio.");
}
else{
System.out.println("Digite o valor que deseja inserir no array");
item = entrada.nextInt();
cc.addItem(item);
}
System.out.println("Deseja inserir outro item? 1-Sim 2-Nao");
repetir = entrada.nextInt();
}while(repetir==1);
break;
case 2: System.out.println("Sera removido o ultimo item da lista...");
int j,k=0;
if(k<cc.getIndice()){
j=cc.getIndice();
j--;
cc.removeItem(j);
}
break;
case 3: System.out.println("O ultimo item do array é:"+cc.mostraUltimo());
break;
case 4:for (int i=0; i<cc.getTamanho(); i++){
System.out.print(cc.getValor(i)+" ");}
System.out.println("");
break;
case 5: System.out.println("Maior valor é:"+cc.mostraMaior());
break;
case 6: System.out.println("Menor valor é:"+cc.mostraMenor());
break;
case 7: System.out.println("Digite o numero pelo qual deseja procurar: ");
elemento = entrada.nextInt();
cc.procuraElemento(elemento);
break;
case 8: System.out.println("Tamanho array:"+cc.getTamanho());
}
}while(escolha!=9);
}
}
[/code]