Tipos de Arrays

Oi!
Veja:

 private int arrayInteiro[3][3];

O que faz esse array ?

no caso isso é a declaração de uma matriz bidimensonal com 3 x 3.

Caso o objetivo seja crirar um Array de int de 3 por 3 o correto seria:

private int arrayInteiro[][] = new int[3][3];

Isto cria um Array de ints de 4 posicoes por 4 posicoes ou seja:

arrayInteiro[0] -> voce tera uma referencia para um array de int[3]
arrayInteiro[1] -> idem
arrayInteiro[2] -> idem

Array bidimensional privado 3 por 3 de inteiros. O construtor deve inicializar a grade vazia com todos como zero.

Como faço isso ?

[code]public class MinhaClasse {

// aqui você não fala nada sobre o tamanho!
private int meuArray[][];

// construtor padrão
public MinhaClasse() {
    // agora sim,você informa o tamanho do array
    // que no caso representa uma matriz bidimensional
    // de três linhas por três colunas.
    // cada elemento será inicializado com 0 (valor padrão para inteiros)
    meuArray = new int[3][3];
}

}[/code]
[]'s

paulovloghan

Lembrando que Arrays em Java iniciam-se no índice 0.

Abraços,

[quote=riqueluz]Caso o objetivo seja crirar um Array de int de 4 por 4 o correto seria:

private int arrayInteiro[][] = new int[3][3];

Isto cria um Array de ints de 4 posicoes por 4 posicoes ou seja:

arrayInteiro[0] -> voce tera uma referencia para um array de int[3]
arrayInteiro[1] -> idem
arrayInteiro[2] -> idem
arrayInteiro[3] -> idem
[/quote]

Não não. Três por três. De 0 a 2, não de 0 a 3.

Falha minha, ja corrigi :slight_smile:

Sensacional a vocês que me responderam!
Então, quer que dizer, que guarda 3 linhas e 3 colunas ?

[quote=hackum]Sensacional a vocês que me responderam!
Então, quer que dizer, que guarda 3 linhas e 3 colunas ?[/quote]

não, ele guarda 4 linhas e 4 colunas, porque o contador inicia do zero.

Certo, e se eu queser colocar um valor dentro ?
Então, guarda 4 numeros na linha e coluna ?

[quote=riqueluz]paulovloghan

Lembrando que Arrays em Java iniciam-se no índice 0.

Abraços,[/quote]

antes de corrigir, certifique-se de estar certo!

[quote=hackum]Certo, e se eu queser colocar um valor dentro ?
Então, guarda 4 numeros na linha e coluna ?[/quote]

hackum não vai na onda desses caras… a matriz que você criou é 3 x 3. quem está falando 4 é porque não sabe do que está falando.

no seu caso, os indices do array iniciam em 0 e vão até 2, logo 3 posições (0,1,2).

então sua matriz tem 9 posições (3x3).

E para guardar valores dentro dela ?

exemplo

array[0][0] = 1;
array[0][1] = 1111;
array[0][2] = 4564;

array[1][0] = 1;
array[1][1] = 6876;
array[1][2] = 0987;

array[2][0] = 78;
array[2][1] = 1111;
array[2][2] = 867;

Como passar construtor para um metodo de subclasse ?
Exemplo:

public class Play {
	
	public Play()
	{
		
	}

}


		if(inputEnter == 1) {
			super.Play();
		}
		
	}
	
}

[quote=hackum]Como passar construtor para um metodo de subclasse ?
Exemplo:

public class Play {
	
	public Play()
	{
		
	}

}

[code]

	if(inputEnter == 1) {
		super.Play();
	}
	
}

}

[/code][/quote]

Oi!
Não funciona dessa forma para o construtor. Você pode dentro do construtor da classe filha dar um super(). Nesse caso, você está invocando o método da classe pai correspondente, que nesse caso, é o construtor. Você pode utilizar desse mesmo artificio em seus métodos. Caso não queira sobrescrever a implementação de um método e simplesmente usa-lo, quando for classe filha, ao invés de “copiar” o código podes simplesmenter chamar o super().

De outra forma, é instanciar a classe Pai de acordo com sua necessidade.
Abraços.

[quote=paulovloghan][quote=hackum]Certo, e se eu queser colocar um valor dentro ?
Então, guarda 4 numeros na linha e coluna ?[/quote]

hackum não vai na onda desses caras… a matriz que você criou é 3 x 3. quem está falando 4 é porque não sabe do que está falando.

no seu caso, os indices do array iniciam em 0 e vão até 2, logo 3 posições (0,1,2).

então sua matriz tem 9 posições (3x3).

[/quote]

é verdade, ele guarda 3 linhas e 3 colunas, eu pensava que a contagem iria de 0,1,2,3…
desculpa a informação incorreta!

[quote=paulovloghan][quote=riqueluz]paulovloghan

Lembrando que Arrays em Java iniciam-se no índice 0.

Abraços,[/quote]

antes de corrigir, certifique-se de estar certo![/quote]

Não entendi… E esta errado falar que o Indice começa em 0 na linguagem Java?

  • há alguma linguagem que comece em 1 algum array, sem tratamento de X+1?

Abraço,

denis:

Pascal começa com indice 1. :slight_smile:

Abs