Ajuda com um If Else, no JOptionPane[RESOLVIDO]

Boa Noite Pessoa!

Bem, to começando com java agora praticamente, estou vendo as vídeos aulas do Curso XTI, no youtube, é muito boa as aulas da para entender legal, só que estou com um probleminha num exercício, sei que é pra eu mesmo tentar resolver e fazer, eu fiz o código por conta própria, mas claro que ta dando erro!
é apenas um básico programa de adivinhação, ele sempre irá selecionar aleatoriamente um número, e se você digitar o mesmo número que ele digitou você ganha, caso contrario você perde
acho que tem alguma coisa a ver com a conversão de String para Int, pode ta meio bagunçado o código, mas é que já fiz algumas alterações, olhando nos forums! Segue ai :

[code]import javax.swing.JOptionPane;
import java.util.Random;

public class JogoDado {

	public static void main(String[] args) {

	String[] faces = {"1", "2", "3", "4", "5", "6"};
		int[] faces2 = Integer.parseInt(faces);
	

		Random d = new Random();

		String face = faces[d.nextInt(faces.length)];
			int faces3 = Integer.parseInt(face);

		System.out.println(face);

			String n = JOptionPane.showInputDialog(null, "Escolha um Numero do Dado de 1 a 6");
				int faces4 = Integer.parseInt(n);
		if (faces4 >= 7) {
			JOptionPane.showMessageDialog(null, "Erro Numero Maior que 6");
		} else if (faces3 == face) {
			JOptionPane.showMessageDialog(null, "Parabens Voce Ganhou, o numero sorteado foi = " + face);		
		} else {
			JOptionPane.showMessageDialog(null, " Desculpe você perdeu, o numero sorteado foi = " + face);
		}

}

}[/code]

bem eu ja consegui fazer ele funcionar até a linha 23, quando eu executava ele me pedia o número, eu digitava e tudo, se fosse maior que 7 ele dava erro, mas não consigo fazer ele funcionar tudo!

Se alguém conseguir me ajudar agradeço! :smiley:

ha o erro é esse:

JogoDado.java:10: error: no suitable method found for parseInt(String[]) int[] faces2 = Integer.parseInt(faces); ^ method Integer.parseInt(String) is not applicable (actual argument String[] cannot be converted to String by method invocation conversion) method Integer.parseInt(String,int) is not applicable (actual and formal argument lists differ in length) JogoDado.java:24: error: incomparable types: int and String } else if (faces3 == face) { ^ 2 errors

           String[] faces = {"1", "2", "3", "4", "5", "6"};  
            int[faces.lenght()] faces2 = null;
             for(int  i = 0, i < faces.lenght;i++){
                     faces2[i] = Integer.parseInt(faces[i]);
             } 

Oi maaelphd,

Pela mensagem que vc postou podemos ver 2 erros. Primeiro vc está tentando converter um array de strings para inteiro. Vc precisaria converter cada item em separado como o Demys mostrou.
Segundo vc está tentando comparar uma string com inteiro na linha 24:

 } else if (faces3 == face) {  

Eu modifiquei um pouco seu programa, mas este código tem a mesma funcionalidade, apenas que ele utiliza o zero também.

import javax.swing.JOptionPane;
import java.util.Random;

public class JogoDado {

	public static void main(String[] args) {

		Random d = new Random();

		int face = d.nextInt(7);

		System.out.println(face);

		int n = Integer.valueOf(JOptionPane.showInputDialog(null,
				"Escolha um Número do Dado de 0 a 6"));

		if (n >= 7) {
			JOptionPane.showMessageDialog(null, "Erro Número Maior que 6");
		} else if (n == face) {
			JOptionPane.showMessageDialog(null,
					"Parabéns Você Ganhou, o número sorteado foi = " + face);
		} else {
			JOptionPane.showMessageDialog(null,
					" Desculpe você perdeu, o número sorteado foi = " + face);
		}

	}
}

Qualquer dúvida é só postar.

É isso aí que os colegas postaram.

Quando vi seu código até pensei: “uai que legal, não sabia que parseInt já convertia um array inteiro de uma vez.” rsrs

[quote=fredericomaia10]É isso aí que os colegas postaram.

Quando vi seu código até pensei: “uai que legal, não sabia que parseInt já convertia um array inteiro de uma vez.” rsrs[/quote]

Pensei a mesma coisa. :lol: