Jump to content


Photo

Alterar índices De Matriz


  • Faça o login para participar
3 replies to this topic

#1 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 20/08/2007, 17:32

Boa noite galera, sou novato em JAVA, assim estou apanhando em uma instrução aqui ^^'

como ALTERAR OS INDICES de dentro de uma MATRIZ? até montei o script:
public class OrdBolha {
 public static void main (String[] args) {

  String[] Letras = {"R","S","P","O","A","D","T","C","E","U","K","G","M","N"};

  for (int I = 0; I < Letras.length - 1; I++) {
   for (int J = 0; J < Letras.length - I; J++) {
	if (Letras[J+1] != null) {
	 char Letra1 = Letras[J].charAt(0);
	 char Letra2 = Letras[J+1].charAt(0);
	 if ((int)Letra2 > (int)Letra1) {
	  String AUX = Letras[J+1];
	  Letras[J+1] = Letras[J];
	  Letras[J] = AUX;
	 }
	}
   }
  }

  for (int I = 0; I <= Letras.length - 1; I++) {
   System.out.println(Letras[I]);
  }

 }
}

Porém, quando ele tenta VERIFICAR um próximo indice que NÃO EXISTE ele da erro: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException até entendo que esta mensagem e de um indice nulo, porém não estou conseguindo resolver este problema.

Alguém mais sábio em JAVA poria me AJUDAR ?

Obrigado desde já.
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#2 Sollos

Sollos

    Normal

  • Usuários
  • 61 posts
  • Sexo:Masculino
  • Localidade:NI/RJ

Posted 20/08/2007, 19:53

Ih cara.. isso aí não é Bolha não.. nem sei o que você fez, tá bem confuso..

Além do que a comparação em Java de valores números é diferente de comparação de valores literais.
Você compara String com a função .equals/equalsIgnoreCase(outra string).

O erro ocorre na linha 8 (if (Letras[J+1] != null) {), uma vez que quando J chegar ao limite do array, essa linha vai chegar ao limite superior + 1, entendeu?

Bom, dá uma olhada no Wikipedia, que lá tem o algoritmo certinho para implementar ^^


PS. Dê uma olhada em classes Java bem formadas, sua classe está bem fora do Default(objetos/primitivas não podem começa com letra maiúscula).

[]'s

#3 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 21/08/2007, 07:32

NANY! O.O'

^^' obrigado.
irei pesquisar!
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#4 Renan Gonçalves

Renan Gonçalves

    Web Developer

  • Usuários
  • 771 posts
  • Sexo:Masculino
  • Localidade:São Paulo, SP
  • Interesses:Programar PHP, Java (e JSP), Javascript (com Ajax, claro), Ruby (on Rails) !

Posted 21/08/2007, 08:35

Ih cara.. isso aí não é Bolha não.. nem sei o que você fez, tá bem confuso..

Opa, claro que é bolha !
Como não ?!


Uma implementação do método pode ser visto aqui


[]'s

Renan Gonçalves
renan.saddam@gmail.com
(WebSite / Gmail / orkut / Windows Live! Messenger
)

"Aquele que se define se limita."





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq