Tipos de Arrays

20 respostas
hackum

Oi!
Veja:

private int arrayInteiro[3][3];

O que faz esse array ?

20 Respostas

P

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

henriqueluz

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

hackum

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

Como faço isso ?

davidbuzatto
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];
    }

}
[]'s
henriqueluz

paulovloghan

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

Abraços,

davidbuzatto

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

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

henriqueluz

Falha minha, ja corrigi :slight_smile:

hackum

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

mauricionarcizo

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

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

hackum

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

P

riqueluz:
paulovloghan

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

Abraços,

antes de corrigir, certifique-se de estar certo!

P

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

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).

hackum

E para guardar valores dentro dela ?

P

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;
hackum

Como passar construtor para um metodo de subclasse ?
Exemplo:

public class Play {
	
	public Play()
	{
		
	}

}
if(inputEnter == 1) {
			super.Play();
		}
		
	}
	
}
nel
hackum:
Como passar construtor para um metodo de subclasse ? Exemplo:
public class Play {
	
	public Play()
	{
		
	}

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

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.

mauricionarcizo

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

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).

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

denisspitfire

paulovloghan:
riqueluz:
paulovloghan

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

Abraços,

antes de corrigir, certifique-se de estar certo!

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,

henriqueluz

denis:

Pascal começa com indice 1. :slight_smile:

Abs

P

denisspitfire:
paulovloghan:
riqueluz:
paulovloghan

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

Abraços,

antes de corrigir, certifique-se de estar certo!

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,

Não há erro nenhum em dizer que começa em 0. Muito menos pra quem já sabe, o que é meu caso.
Ele foi querer me corrigir dizendo que a matriz que o hackum estava usando era 4 x 4 e não 3 x 3 como eu havia falado!

só isso :slight_smile:

e hackum

sua dúvida agora é outra… interessante usar outro tópico…

abrs

Criado 13 de julho de 2011
Ultima resposta 14 de jul. de 2011
Respostas 20
Participantes 7