Ich bin neu in Java und sehr neu zu verwenden Schleifen, bisher habe ich an einem Problem für meine Klasse zu einem Programm, das überprüft, ob der Benutzer eine Variation der richtigen Zahlen zufällig generiert, aber es sagt, dass lottoNumberString kann nicht gefunden werden, sobald die Schleife beginnt. Irgendwelche Tipps, wie man es beheben kann?Wie verwende ich eine 'for'-Schleife, um nach bestimmten Ziffern in einem Eingang zu suchen?
import java.util.Scanner;
public class Lottery
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
for(int i=0; i < 3; i++)
{
double lotto = Math.random();
int lotteryNumberDigit = (int)(lotto*10);
String lotteryNumberString = Integer.toString(lotteryNumberDigit);
}
String firstNumber = lotteryNumberString.substring(0,0);
String secondNumber = lotteryNumberString.substring(1,1);
String thirdNumber = lotteryNumberString.substring(2,2);
String firstTwoWinner = firstNumber + secondNumber;
String lastTwoWinner = secondNumber + thirdNumber;
String allNumbersWinner = firstNumber + secondNumber + thirdNumber;
System.out.println("Please enter your three numbers (e.g. 123): ");
String userInput = input.next();
if(userInput.substring(0,2).equals(firstTwoWinner))
{
System.out.println("Winner: " + allNumbersWinner);
System.out.println("Congratulations, the front pair matched.");
}
else if (userInput.substring(1,3).equals(lastTwoWinner))
{
System.out.println("Winner: " + allNumbersWinner);
System.out.println("Congratulations, the end pair matched.");
}
else if (userInput.equals(allNumbersWinner))
{
System.out.println("Winner: " + allNumbersWinner);
System.out.println("Congratulations, both pairs matched.");
}
else
{
System.out.println("Winner: " + allNumbersWinner);
System.out.println("Sorry, no matches. You only had one chance out of 100 to win anyway.");
}
}
}
Können Sie bitte die Antwort erneut akzeptieren, glaube System hatte ein Problem, es hat automatisch die Antwort nicht akzeptiert. Vielen Dank im Voraus – mhasan