Matriz -> Atribuição de valores

Seguinte, eu cheguei num problema em q eu tenho q criar uma matriz de 162 valores diferentes,
e… bom… convenhamos q não é legal fazer isso em 162 linhas (o jeito q eu sei), e q nem é legal
vc ter q entrar manualmente isso qnd inicia o programa.
Então a minha dúvida é a seguinte, dá pra fazer numa matriz uma atribuição assim como a para vetores?
(q nem essa aí em baixo?)

Exemplo:

int[] array = new int[3]
array[0] = 11;
array[1] = 24;
array[2] = 43;
array[3] = 82;

int[] array = {11, 24, 43, 82};
int[][] matriz = new int[2][2];
int matriz[0][0] = 11;
int matriz[0][1] = 24;
int matriz[1][0] = 43;
int matriz[1][1] = 82;

:?: :?:

Igor,

acho que vc pode fazer assim:

int[][] matriz = {
			      { 1, 2, 3, 4 },
			      { 5, 6, 7 }
		       }
System.out.println("O elemento da matriz nas posicoes [0][2] e " + matriz[0][2]);

Ou você esta procurando uma amneira de varrer toda sua matriz,
para nao ter que colocar cada valor no braço…?

entao voce tera que varrer assim…

for(int linhas=0;linhas<10;linhas++){
for(int cols=0;cols<10;cols++){
minhaMatriz[linhas][cols]=algumaCoisa;
}
}

Pinheiro era EXATAMENTE isso q eu queria.
Mas me diz uma coisa… Fazendo desse jeito
organiza como?

{{linha 0 coluna 0, linha 0 coluna 1}, {linha 1 coluna 0, linha 1 coluna 2}}
mais ou menos isso?

Quer dizer… com aqueles exemplos ficaria assim:
matriz{{11, 24},{43, 82};
?

É isto mesmo.

e conselho do dia é… tente usar Collections…

Eu também tenho um problema do tipo.

Vejam só :

public class Exercicio_9 {

public static void main (String args[]){
    
//Letra A
int t[][] = new int [2][3];

//Letra G
int t[0][1] = 0;


}

}//termino Classe Exercicio_9

Eu uso NetBeans 6.7.

O IDE mostra que fiz a instrução int t[0][1] = 0; de modo errado. O que tem afinal de errado? Olha que já fiz sem int.

[code]//Letra A
int t[][] = new int [2][3];

//Letra G
t[0][1] = 0; [/code]

vc estava declarando de novo.

Eu tbm estou com essa duvida, tenho uma matriz[12][12] e queria esxrever os valores dela no codigo so q nao estou dando conta, como faço??

EXEMPLO
Se for um vetor e so fazer assim que da certo

int[] vetor = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};

E em uma matriz como faço??

 int[][] matriz = {  
                      { 1, 2, 3, 4 },  
                      { 5, 6, 7 }  
                   }  
    System.out.println("O elemento da matriz na posicao [0][0] e " + matriz[0][0]);  

para pecorrer elas,


for(int linha=0;linha<10;linha++){  
for(int coluna=0;coluna<10;coluna++){  
matriz[linha][coluna]=2;  
}  
} 

Topico Resolvido???

Sempre que precisar fazer isso, o melhor é usar 2 for

um vai controlar a linha e o outro a coluna

igual o pessoal mostrou.

É assim já a muitos anos.

Porque você não tenta usar Collection!

Como o pessoal falou é melhor usar collection mesmo só que o problema é que se for exercício de escola o professor exige usar vetor e matriz.
No entanto depois que resolver com vetor e matriz é bom resolver com collection.

Minha dica para complementar é que não entre com valores manualmente.
Tente usar a classe Random ou a classe como mostrado nos posts GUJ abaixo:

http://www.guj.com.br/java/98-mathrandom
http://www.guj.com.br/3-como-gerar-um-numero-aleatorio-em-java
http://www.guj.com.br/java/225485-gerar-numeros-randomicos-em-java
http://www.guj.com.br/java/270456-resolved-como-funciona-o-mathrandom
http://www.guj.com.br/java/294605-resolvido-duvida-mathrandom

Igor no caso 2 coisas que queria te falar
1 - Esses posts eu achei no GUJ procurando na barrinha de busca do google que tem na parte superior direita do GUJ
pois eu gosto muito de usar ela pois ela traz preferencialmente coisas já postadas e dúvidas de usuários do guj e etc.
Tenta usar ela para você ver como ajuda também e vai ver que vai encontrar um monte de soluções exclusivas aqui do GUJ.

no caso eu digitei nela assim como fazer valores aleatórios math java guj

e aí ela me retornou esses links acima.

2 - Para colocar essa solução no seu projeto, vai ter que atentar também para o fato de comparar
se o valor a ser inserido já foi inserido antes na matriz. Acredito que pode fazer isso com comparação for
mas não sei se vai ser mais rápido comparar direto na matriz, ou então a cada vez que adicionar um número na matriz
adicionar ele também em uma collection para quando adicionar o próximo número, comparar com o collection ao invés de com a matriz.

Até onde posso falar é que se comparar com o collection vc só vai usar o famoso contains
ou seja vai gastar uma linha só para varrer todo o collection, e já se for comparar na própria matriz
você vai usar várias linhas.

Exemplificanto eu deixei um print da página do Java Use a Cabeça, mostrando uma melhor análise
de que usar collection é melhor que matriz.

Java Use a Cabeça
Capítulo 6 - Usando a Biblioteca Java
Página 99 e página 101 (comparando Matriz e ArrayList)
Lembrando que arraylist é uma das “collections” que mais se usa no início dos estudos.

Espero ter ajudado e bons estudos.




Como o pessoal falou é melhor usar collection mesmo só que o problema é que se for exercício de escola o professor exige usar vetor e matriz.
No entanto depois que resolver com vetor e matriz é bom resolver com collection.

Minha dica para complementar é que não entre com valores manualmente.
Tente usar a classe Random ou a classe como mostrado nos posts GUJ abaixo:

http://www.guj.com.br/java/98-mathrandom
http://www.guj.com.br/3-como-gerar-um-numero-aleatorio-em-java
http://www.guj.com.br/java/225485-gerar-numeros-randomicos-em-java
http://www.guj.com.br/java/270456-resolved-como-funciona-o-mathrandom
http://www.guj.com.br/java/294605-resolvido-duvida-mathrandom

Igor no caso 2 coisas que queria te falar
1 - Esses posts eu achei no GUJ procurando na barrinha de busca do google que tem na parte superior direita do GUJ
pois eu gosto muito de usar ela pois ela traz preferencialmente coisas já postadas e dúvidas de usuários do guj e etc.
Tenta usar ela para você ver como ajuda também e vai ver que vai encontrar um monte de soluções exclusivas aqui do GUJ.

no caso eu digitei nela assim como fazer valores aleatórios math java guj

e aí ela me retornou esses links acima.

2 - Para colocar essa solução no seu projeto, vai ter que atentar também para o fato de comparar
se o valor a ser inserido já foi inserido antes na matriz. Acredito que pode fazer isso com comparação for
mas não sei se vai ser mais rápido comparar direto na matriz, ou então a cada vez que adicionar um número na matriz
adicionar ele também em uma collection para quando adicionar o próximo número, comparar com o collection ao invés de com a matriz.

Até onde posso falar é que se comparar com o collection vc só vai usar o famoso contains
ou seja vai gastar uma linha só para varrer todo o collection, e já se for comparar na própria matriz
você vai usar várias linhas.

Exemplificanto eu deixei um print da página do Java Use a Cabeça, mostrando uma melhor análise
de que usar collection é melhor que matriz.

Java Use a Cabeça
Capítulo 6 - Usando a Biblioteca Java
Página 99 e página 101 (comparando Matriz e ArrayList)
Lembrando que arraylist é uma das “collections” que mais se usa no início dos estudos.

Espero ter ajudado e bons estudos.
[/quote]

kkkkkkkkkkkkkkkkkkkkkkkkkkkkkk…

1 curtida