Espero me puedan guiar.
Código:
y la otra clasepublic class TestArreglo { public static int Menu() { int opcion; do{ opcion = Teclado.entero("1.Insertar dato\n2.Listar\n3.Buscar Dato\n4.Actualizar dato\n5.Borrar dato\n6.Ordenar\n7.Salir\n"); if (opcion <1 || opcion>7) System.out.println("Opcion no valida"); }while(opcion <1 || opcion>7); return opcion; } public static void main(String []args){ //variables int dato,max,opcion,pos; ArregloEnteros miarreglo; max=Teclado.entero("Dame el tamaño del arreglo:");; miarreglo = new ArregloEnteros(max); do{ opcion=Menu(); switch (opcion) { case 1: if (miarreglo.validaEspacio()) { dato=Teclado.entero("Dame el dato:"); miarreglo.insertar(dato); if()//Aqui quería validar que no se repitiera el dato { System.out.println("Error, no se pueden repetir datos"); } }else { System.out.println("Error no hay espacio"); } break; case 2: miarreglo.listar(); break; case 3: pos=miarreglo.buscarDato(Teclado.entero("Dato a buscar: ")); if (pos != -1) for(int i=0;i<pos+1;i++){ miarreglo.listar(pos); } else System.out.println("Error, no existe el dato"); break; case 4: dato=Teclado.entero("Dame el dato que quieres actualizar: "); pos=miarreglo.buscarDato(dato); if(pos != -1){ miarreglo.actualizar(pos); } else System.out.println("No se encontro el dato"); break; case 5: dato=Teclado.entero("Dato a borrar: "); pos= miarreglo.buscarDato(dato); if(pos != -1){ miarreglo.borrar(pos); } else System.out.println("No se encontro el dato"); break; case 6: miarreglo.Ordenar(); break; case 7: break; default: System.out.println("Opcion incorrecta"); break; } }while(opcion!=7); } }
Código:
Gracias. public class ArregloEnteros { //atributos private int[] arreglo; private int[] auxiliar; private int indice; //constructor public ArregloEnteros(int max){ arreglo =new int[max]; auxiliar =new int[max]; indice = -1; } public boolean validaEspacio(){ return(indice<arreglo.length-1); } public void insertar(int dato){ indice ++; arreglo[indice]=dato; } public void listar(){ int i; for(i=0;i<=indice;i++){ System.out.println(arreglo[i]); } } public void listar(int pos){ System.out.println(arreglo[pos]); public int buscarDato(int dato){ int j=0; for(int i=0;i<=indice;i++){ if(arreglo[i]==dato){ auxiliar[j]=i; j++; } } return j-1; } public void actualizar (int pos){ for(int i=0;i<=pos;i++){ arreglo[auxiliar[i]]=Teclado.entero("Introduzca el dato nuevo: "); } } public int borrar (int pos){ for(int i=0;i<=pos;i++){ arreglo[auxiliar[i]]=arreglo[indice]; indice --; } return pos; } public void Ordenar(){ Ordenamiento ordena=new Ordenamiento(); ordena.SortIntercambio(arreglo, indice); } }