[return] Exercício da apostila Caelum

Boa noite estou acompanhando o exercicio da apostila Algoritmos e estrutura de Dados e esta retornando Null ao executar o primeiro teste:
tenho a classe Aluno, Vetor, class TesteAdicionaNoFim, e ao executar esta aparecendo tudo null nao apareceu os nomes como apareceu na apostila onde estou errando aqui vai o que eu acho que pode ser.


public class TesteAdicionaNoFim {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Aluno a1 = new Aluno();
		Aluno a2 = new Aluno();
		
		a1.setNome("Joao");
		a2.setNome("Rafael");
		
		Vetor lista = new Vetor();
		
		lista.adiciona(a1);
		lista.adiciona(a2);
		
		System.out.println(lista);
		

saída: [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,

alguem pode me esclarecer tenho quase certeza de que é por causa do null na classe vetor, aqui lendo fala que eu podia estar adicionando null, falses, e 0 caso queira compilar.
agradeço dede já.

experimenta:

 System.out.println(lista.pega(0));

att,

obrigado pedruhenrik

public class TesteAdicionaNoFim {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Aluno a1 = new Aluno();
		Aluno a2 = new Aluno();

		a1.setNome("Alberto");
		a2.setNome("Rafael");

		Vetor lista = new Vetor();

		lista.adiciona(a1);
		lista.adiciona(a2);

		System.out.println(lista.pega(0));
		
		//adiciona por posicao
		/*Aluno a1 = new Aluno();
		Aluno a2 = new Aluno();
		Aluno a3 = new Aluno();
		
		a1.setNome("joao");
		a2.setNome("pedro");
		a3.setNome("teste");
		
		Vetor lista = new Vetor();
		
		lista.adiciona(a1);
		lista.adciona(0, a2);
		lista.adciona(1, a3);
		
		System.out.println(lista.pega(0));
		*/
		
		

	}

}

Fiz como me disse, agora sai so um Null
veja:
saida

null

restante das classes

package br.com.caelum.ed;

import java.lang.reflect.Array;
import java.util.Arrays;

public class Vetor {
	// declarando e inicializando um array de aluno com capacidade 100
	private Aluno[] alunos = new Aluno[100];

	public void adiciona(Aluno aluno) {

	}

	public void adciona(int posicao, Aluno aluno) {

	}

	public Aluno pega(int poosicao) {
		return null;
	}

	public void remove(int posicao) {

	}

	public boolean contem(Aluno aluno) {
		return false;
	}

	public int tamanho() {
		return 0;
	}

	public String toString() {
		return Arrays.toString(alunos);
	}

}

package br.com.caelum.ed;

public class Aluno {

	private String nome;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	/**
	 * @metod TOSTRING para imprimir os alunos na tela
	 */
	public String toString() {
		return nome;
	}

	/**
	 * o metodo equals(object) serve para comparar dois objetos do tipo aluno.
	 * 
	 * @param o
	 * @return
	 */
	public boolean equals(Object o) {

		Aluno outro = (Aluno) o;
		return this.nome.equals(outro.nome);
	}
}

nao obtive resultado dos teste que era para sair nomes e esta saindo agora um null com a ajuda do amigo pedruhenrik

public Aluno pega(int poosicao) { return alunos[posicao]; }

vc esta retornando null, quando eu ACHO q o correto seria procurar no vetor a posição do aluno e retorna lo.

testa ae.

att,

Peraí… tá assim na apostila? Tem certeza?

Seu método adiciona não faz nada…
Seu método pega sempre retorna null (como já apontado pelo pedruhenrik)

sim meu caro AbelBueno estou seguindo a apostila CS - 14 e la nela fala assim: que alguns do codigo do vetor acima,os metodos sao void e por isso nao compila. e se caso eu quisesse que compilasse era para eu adicionar alguns returns 0,null, false. Isso que fala ai fiz a classe class TesteAdicionaNoFim como esta para fazer os testes e esta saindo isso como falei adicionei la em return alunos[posicao] como disse o amigo pedruhenrik e continua saindo um null ainda.

não sei qual é meu erro ja modifiquei tudo código fonte e nada… realmente nao sei o que pode ser.

teu metodo adiciona não esta adicionando:

[code] public void adciona(int posicao, Aluno aluno) {

}  [/code]

att,

na verdade os 2 “adiciona”:

[code]public void adiciona(Aluno aluno) {

}  

public void adciona(int posicao, Aluno aluno) {  

} [/code]

vê se não tem algo na apostila, mais a frente, q mostre como implementar esses metodos.

att,

E que no caso aqui fala mesmo que a classe Vetor nao compila mesmo. E aqui ja no começo faz vários testes antes de implementar, mais para frente depois dos testes tem implementação na classe vetor, vou fazer um teste aqui apenas com a classe Aluno pra ver e deixar para fazer a classe Vetor depois quando chegar nas implementações pra ver, se sai como nos testes, se ocorrer tudo bem eu digo se nao também u posto aqui, obrigado pedruhenrik.

[quote=olivercld]Boa noite estou acompanhando o exercicio da apostila Algoritmos e estrutura de Dados e esta retornando Null ao executar o primeiro teste:
tenho a classe Aluno, Vetor, class TesteAdicionaNoFim, e ao executar esta aparecendo tudo null nao apareceu os nomes como apareceu na apostila onde estou errando aqui vai o que eu acho que pode ser.


public class TesteAdicionaNoFim {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Aluno a1 = new Aluno();
		Aluno a2 = new Aluno();
		
		a1.setNome("Joao");
		a2.setNome("Rafael");
		
		Vetor lista = new Vetor();
		
		lista.adiciona(a1);
		lista.adiciona(a2);
		
		System.out.println(lista);
		

saída: [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,

alguem pode me esclarecer tenho quase certeza de que é por causa do null na classe vetor, aqui lendo fala que eu podia estar adicionando null, falses, e 0 caso queira compilar.
agradeço dede já.[/quote]

O problema esta nesse return null

sim, eu vou refazer o exercicio de outra maneira para ver se da certo valeu amigo ruben_m

Ok , qualquer coisa é so compartilhar a solução

valeu, ruben_m descobri o erro eu tenho de implementar… vamos la um dia consigo… valeu qualquer coisa estou de volta.

fica uma pergunta caso ocorra um problema futura mente neste mesmo exercício, eu posso continuar postando aqui mesmo ou tem que abrir outro tópico. ?

Acho que depende de ti , assim como se quizeres manter contacto podes mandar mensagens para outros usuarios assim como eu !

Mas sempre é bom postar em forma de Artigos pois ajudamos outros que tenham duvidas semelhantes… a ideia do forum é de ajudarmonos uns aos outros

vlw

Amigos obrigado… ao continuar a apostila ensina como fazer as implementações, futuramente irão surgir novas duvidas e eu conto com ajuda de voçes. Obrigado a todos.