Converter array em vetor unidimensional

pessoal to com um problema tenho que ler um matriz quadrada 4 e transforma-la em um vetor de modo que as linhas estejam em sequencia começando da posição 0,0 e terminando na 4,4.
como deve ser a condição logica para isso ?

Fabio, boa tarde.

O que você fez até agora? Está com qual dificuldade? Seu código está dando erro?

a unica coisa que falta é a condiçao

public class ArrayMatriz1 {
public static void main (String args []){

	int a [] = new int [16];
	
	int b [] [] = new int [4] [4];
	
	for(int l = 0 ; l<=3 ; l++){
		for(int c = 0 ; c<=3 ; c++){
			b[l][c]= (int)(Math.random()*100+1);
		}
	}
	System.out.println("=============================== Matriz ==============================");
	
	for(int l = 0 ; l<=3 ; l++){
		System.out.println("");
		for(int c = 0 ; c<=3 ; c++){
			System.out.print(b[l][c]+"\t");
		}
	}
	// condição que determina a posição do valor

	for(int l = 0 ; l<=3 ;l++){
		for(int c =0 ; c<=0 ; c++){
			a[l] = b[l][c];
		
		}
	}


		
			System.out.println("");
			System.out.println("=============================== Vetor ==============================");
		
		for(int x = 0; x<=15 ; x++){
			System.out.print(a[x]+"\t");
		}
	}
	
}

esse é meu codigo ate o momento

Converta os índices com a formula:

iSequencial = i * largura + j;

Onde i é o número da linha, começado em 0.
E j é a coluna e largura é a quantidade de colunas.

Para inverter o índice a formula é:
i = iSequencial / largura;
j = iSequencial % largura;

public class ArrayMatriz1 {
public static void main (String args []){

	int a [] = new int [16];
	
	int b [] [] = new int [4] [4];
	
	for(int l = 0 ; l<=3 ; l++){
		for(int c = 0 ; c<=3 ; c++){
			b[l][c]= (int)(Math.random()*100+1);
		}
	}
	System.out.println("=============================== Matriz ==============================");
	
	for(int l = 0 ; l<=3 ; l++){
		System.out.println("");
		for(int c = 0 ; c<=3 ; c++){
			System.out.print(b[l][c]+"\t");
		}
	}
	// condição que determina a posição do valor

	for(int l = 0 ; l<=3 ;l++){
		for(int c =0 ; c<=0 ; c++){
			a[l*4+c] = b[l][c];
		
		}
	}


		
			System.out.println("");
			System.out.println("=============================== Vetor ==============================");
		
		for(int x = 0; x<=15 ; x++){
			System.out.print(a[x]+"\t");
		}
	}
	
}

com esse codigo consegui o segunte resultado :
--------------------Configuration: --------------------
=============================== Matriz ==============================

2 34 39 70
21 44 53 79
62 67 95 61
72 19 74 76
=============================== Vetor ==============================
2 0 0 0 21 0 0 0 62 0 0 0 72 0 0 0

gostaria de saber se algum pode me ajudar a exibir todas as posições .

No for onde você atribui a você está fazendo c<=0 ao invés de c<=3.

Por favor, ao postar códigos, use a tag code como descrito aqui:

tenho que gerar uma matriz aleatoria e depois em uma outra matriz ordenar a primeira de forma decrescente como faço isso ?

Existe o comando Arrays.sort, que ordena um array unidimensional.

e como faço para utiliar esse Array.sort ?

Se seu array for de tipos primitivos, basta fazer:

Arrays.sort(seuArray);

Se não for, tem que implementar a interface Comparable ou um Comparator:

Para usar a classe Arrays, você deve importa-la do pacote java.util:

import java.util.Arrays;

como dever ser a sintaxe para utilização do Array.sort(); eu não estou encontrando em local nenhum …?

[quote=1fabiopereira]como dever ser a sintaxe para utilização do Array.sort(); eu não estou encontrando em local nenhum …?[/quote]Ele colocou no post acima. O.o

[code]import java.util.Arrays;
public class ArrayMatriz2 {
public static void main (String args []){

	int a [][] = new int [3][3];
	
	int b [] [] = new int [3] [3];
	

			
	for(int l = 0 ; l<=2 ; l++){
		for(int c = 0 ; c<=2 ; c++){
		a[l][c]= (int)(Math.random()*100+1);
		
		}
	}
	
	System.out.println("=============================== Matriz A ==============================");
	
	for(int l = 0 ; l<=2 ; l++){
		System.out.println("");
		for(int c = 0 ; c<=2 ; c++){
		System.out.print(a[l][c]+"\t");
		}
	}
	// condição que determina a posição do valor


	for(int l = 0 ; l<=2 ;l++){
		for(int c =0 ; c<=2 ; c++){	
       b[l][c] = a[l][c];
	
		}
	}


	System.out.println("");
	System.out.println("=============================== Matriz B ==============================");
		
	for(int l = 0 ; l<=2 ; l++){
		System.out.println("");
		for(int c = 0 ; c<=2 ; c++){
		System.out.print (b[l][c]+"\t");
		}
	
	}
	
}

}[/code]
esse é meu codigo ate o momento onde devo inserir o Array.sort(); e como para que a matriz b esteja em ordem decrescente?