Endlosschleife Java?
Hat jemand ein Beispiel wie eine Endlosschleife mit integrierten Benutzereingaben in Java aussehen könnte?
Danke:).
![](https://images.gutefrage.net/media/user/DerMusiker11001/1634623180399_nmmslarge__0_0_1200_1199_277c4493432e9b5b6ab71c96b258ee43.jpg?v=1634623181000)
Also eine Benutzereingabe in der Schleife?
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
jap genau
5 Antworten
![](https://images.gutefrage.net/media/user/Lezurex/1575979598014_nmmslarge__0_0_796_796_cce3bba999d2f4ba9ba6f831bd4f56ac.jpg?v=1575979598000)
Scanner scanner = new Scanner(System.in);
while (true) {
String echo = scanner.nextLine();
System.out.println(echo);
}
![](https://images.gutefrage.net/media/user/FaTech/1708715131049_nmmslarge__0_0_500_500_77a0f43d5804c908f40c8a1b0c260400.png?v=1708715131000)
Du kannst abfragen, "während das gegebene richtig ist, wiederhole". Korrekt würde es sein: while true
Also:
Scanner input = new Scanner(System.in);
while(true)
{
// Irgendein Code, der sich wiederholen soll z.B.
System.out.println("User Input " + input.nextLine());
}
While wiederholt sich solange, bis true zu false wird. Da true aber ein Wert ist und keine Variable, wird dieser sich niemals ändern und ist somit endlos
![](https://images.gutefrage.net/media/user/DerMusiker11001/1634623180399_nmmslarge__0_0_1200_1199_277c4493432e9b5b6ab71c96b258ee43.jpg?v=1634623181000)
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner s = new Scanner (System.in);
String eingabe;
while(true)
{
System.out.println("Gib was ein.");
eingabe=s.next();
}
Hast du dir sowas vorgestellt? Die Schleife nimmt nie ein Ende, weil i nicht hochgezählt wird und in der Schleife ist ne Benutzereingabe.
![](https://images.gutefrage.net/media/user/FaTech/1708715131049_nmmslarge__0_0_500_500_77a0f43d5804c908f40c8a1b0c260400.png?v=1708715131000)
Die Schleife nimmt ein Ende, weil i = 0 und die Schleife geht nur, wenn i >= 1 ist. Dazu ist dies viel zu kompliziert. Dafür würde ein einfacher boolean ausreichen
![](https://images.gutefrage.net/media/user/DerMusiker11001/1634623180399_nmmslarge__0_0_1200_1199_277c4493432e9b5b6ab71c96b258ee43.jpg?v=1634623181000)
![](https://images.gutefrage.net/media/user/priesterlein/1542055893934_nmmslarge__444_0_1075_1075_c1ca1c12508ee885dc0aee04c6e0cbf8.png?v=1542055894000)
while(true) {
Scanner scannervariable = new Scanner(System.in);
}
![](https://images.gutefrage.net/media/user/Bananapeel321/1661348723318_nmmslarge__174_0_360_360_dec9df60b121fcfa1aa2e9957de68a38.jpg?v=1661348723000)
Du könntest auch eine for-Schleife nutzen:
for (;;) {
// ...
}
Das Scanner-Objekt sollte besser außerhalb der Schleife angelegt werden, denn nur ein einziges ist notwendig. Speicher muss so nicht mehrmals reserviert werden.