Ajuda com logica

Gente sou novo aqui no forum, gostaria que alguem me ajudasse
eu estou fazendo um programinha tosco meio que simulando um jogo de rpg
ai eu fiz um codigo assim

[code]public static Integer[] exp = new Integer[11]; //aqui cria a variavel

public static void calcexp() {
	String texto = "";
	Integer Lv = 0;
	exp[0] = 0;
	for (int i = 1; i < exp.length; i++) {
		Lv = i - 1;
		exp[i] = (50 * (Lv) * (Lv) * (Lv) - 150 * (Lv) * (Lv) + 400 * (Lv)) / 3;
	}

[/code]

Oque ele faz é gerar uma “array” ou vetor com o id exemplo
exp[5] = 800;
onde 5 é o level e 800 é a experiencia que ele precisa pra chegar ao level 5

mais na hora de conferir nao está dando certo eu fiz o codigo assim

for (int j = 1; iexp >= iExp.exp[j] && (iexp < iExp.exp[j+1]) ; j++) { JOptionPane.showMessageDialog(null, "+++ Level Up +++"); ilevel = j; break; }
oque era pra essa parte fazer é quando a exp que o meu personagem tem for
maior que a exp do level j e menor que j + 1 que seria a do proximo level
ele mostraria o +++ Level Up +++ e mudaria o level do personagem pra j no caso seria o level
de acordo com a sua experiencia mais nao ta dando certo isso ele passa “reto” nao executa
a mensagem mesmo se a sua experiencia está acima do level

me ajudem por favor fiz um monte de testes de diferentes tipos mais nenhum deu o resultado correto

Já rodou o programa com o depurador?

Desculpa a minha “ignorância” mais como assim rodar com o depurador?
depurador seria tipo um passo a passo como no delphi?

ps/; ja deu pra perceber q sou iniciante ^,^
mais estou muito afim de aprender

Isso mesmo, o passo-a-passo. A forma mais simples de identificar um problema em casos esse é rodar passo a passo e ver o valor das variáveis no processo.

Se você estiver usando Netbeans ou Eclipse, o depurador já vem integrado. É só usar.