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);
}
}


