Quero criar um programa que use interfaces para criar uma classe vetor com nome e tamanho e tenha os métodos abaixo:
<> +DefinirNomeTamanhoVetor +PreencherVetorCriadoInformandoPosicaoValor +OrdenarVetor +ExibirVetor
Não consigo passar o vetor de um método para usando a interface.
Segue a classe do Vetor: package aula06Cencapsulamentotreino;
package aula06Cencapsulamentotreino;
import java.util.Arrays;
import java.util.Scanner;
public class Vetor implements InterfaceControladora {
private int posicaovetor = 0;
private int tamanhovetor = 0;
private String nomevetor = "";
/**
* @return the nome
*/
public String getNome() {
return nomevetor;
}
/**
* @param nome the nome to set
*/
public void setNome(String nome) {
this.nomevetor = nome;
}
/**
* @param posicao
* @param tamanho
*/
public Vetor(int posicao, int tamanho) {
super();
this.posicaovetor = posicao;
this.tamanhovetor = tamanho;
this.nomevetor = nomevetor;
}
/**
* @return the posicao
*/
private int getPosicao() {
return posicaovetor;
}
/**
* @param posicao the posicao to set
*/
private void setPosicao(int posicao) {
this.posicaovetor = posicao;
}
/**
* @return the tamanho
*/
private int getTamanho() {
return tamanhovetor;
}
/**
* @param tamanho the tamanho to set
*/
private void setTamanho(int tamanho) {
this.tamanhovetor = tamanho;
}
@Override
public void metodoDefinicaoVetor(String nomevetor, int tamanhovetor) {
// TODO Auto-generated method stub
setNome(nomevetor);
setTamanho(tamanhovetor);
int v[] = new int[getTamanho()];
Arrays.fill(v, 0);
System.out.println("Nome do vetor = " + getNome());
// Impressão dos valores dentro da posição do vetor.
for (int i = 0; i < v.length; i++) { //
System.out.printf(" " + v[i]);
}
System.out.println("");
}
int j = 0;
int v[] = new int[getTamanho()];
Scanner teclado = new Scanner(System.in);
@Override
public void metodoPreencimentoVetor() {
// TODO Auto-generated method stub
System.out.println("getTamanho = "+getTamanho());
while (j != v.length + 1) {
System.out.println("+++++++++inicioCase1");
System.out.println("Digite a POSIÇÃO que deseja inserir um VALOR.");
int posicaoValor;
if ((posicaoValor = teclado.nextInt()) > v.length) {
System.out.println("Digite uma posição até o tamanho de: " + v.length);
System.out.println("++++++++fimCase1");
break;
}
System.out.println("Digite o VALOR que deseja inserir na POSIÇÃO.");
int valorInserido = teclado.nextInt();
System.out.println("Será inserido no vetorBase de TAMANHO = " + v.length + ", na POSIÇÃO = " + posicaoValor
+ ", o VALOR = " + valorInserido);
v[posicaoValor] = valorInserido; // Vetor Base na posicaoValor recebe o valorInserido.
// Imprimir o vetor criado para mostrar a posição que foi inserido o valor na
// posição correta.
System.out.println(Arrays.toString(v));
j++;
}
}
/*
* @Override public void metodoOrdenacaoVetor() { // TODO Auto-generated method
* stub int v[] = new int [getTamanho()]; Arrays.sort(v); }
*
* @Override public void metodoBuscarValorVetor() { // TODO Auto-generated
* method stub
*
* }
*/
}