Problema matriz linha = coluna

boa tarde,

tou com uma ligeira duvido eu tenho um metodo em que pretendo verificar se uma matriz tem o mesmo numero de colunas e o mesmo numero de linhas, mas esta me a dar um erro

[code] public static boolean MatrizQuadrada(int[][] m){

 int resultado [][]; 
 boolean correto = false;
 
 for(int i=0;i<m.length;i++){
	 for(int j=0;j<m.length;j++){
		 if(i == j)
			 m[i][j] = resultado;
		 correto = true;
	 }
 }
 
 
 
 
 return correto;

}[/code]

se me conseguire encontrar qual o erro ficavavos grato

Posso parecer minimalista, mas[code]

lic static boolean MatrizQuadrada(int[][] m){
int i = m.length;
int j = m[0].length;
if(i == j){
return true;
}
return false;
}
[/code]

nao é preciso colocar o ciclo for ?

[code]public static boolean isMatrizQuadrada(int[][] m){

for(int i=0;i<m.length;i++){  
	if (m[i] == null) return false;//um elemento era nulo

	if (m[i].length != m.length) return false;//um elemento era diferente da primeira dimesão
}  
return true;

}
[/code]

Agora imaginemos que eu quero devolver somente os valores, que esteja na diagonal do array, ou seja quando o i tambem é igual ao j, eu experientei e esbarrei num ponto. ora vejam:

[code]int[][] diagonal(int[][] matriz){

boolean verdade = false;

for(int i=0;i<matriz.length;i++){
	for(int j=0;j<matriz.length;j++){
		if(i==j)
	matriz[i][j] = ;


return matriz;

}
}
}[/code]