Bitte verzeihen Sie es, da es sich um ein autarkes Memorandum handelt
Fortsetzung der vorherigen Sitzung.
Verbesserungen an dieser Funktion, die ich beim letzten Mal in Betracht gezogen habe ① Wenn Sie den Inhalt des Arrays auf dem Terminal wie [[1] Meiji University, [2] Hosei University, [3] Waseda University, [4] Rikkyo University] anzeigen, wird die Anzeige von [] nicht unterstützt. ② Bitte erneut auswählen. Ermöglicht die Eingabe von Zahlen, wenn diese angezeigt werden. Ich denke, dass dies durch iterative Verarbeitung erfolgen kann. ③ Erhöhen Sie die Anzahl der Probleme. ④ Machen Sie es möglich, zufällig Fragen zu stellen. ⑤ Ermöglichen Sie die zufällige Anzeige der Antworten.
Ich werde an dem Ort beginnen, an dem ich es vorerst tun kann. ② wird verbessert.
Test4.java
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
class Test4 {
public static void main(String args[]) {
List<String> array = new ArrayList<String>();
array.add("[1]Meiji Universität");
array.add("[2]Hosei Universität");
array.add("[3]Waseda Universität");
array.add("[4]Rikkyo Universität");
for (int i = 0; i <= 3; i++) {
System.out.println("Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?");
System.out.println(array);
Integer number = new Scanner(System.in).nextInt();
if (number == 1) {
System.out.println("Ist die richtige Antwort!");
break;
} else {
array.remove(number - 1);
System.out.println("Das ist falsch");
System.out.println("Bitte wählen Sie die Nummer erneut.");
}
}
}
}
Terminal
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [3]Waseda Universität, [4]Rikkyo Universität]
1
Ist die richtige Antwort!
↑ Richtiges Antwortmuster Ich schrieb Pause;, also hörte die Wiederholung auf.
Terminal
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [2]Hosei Universität, [3]Waseda Universität, [4]Rikkyo Universität]
2
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [3]Waseda Universität, [4]Rikkyo Universität]
1
Ist die richtige Antwort!
↑ Korrigieren Sie das Muster versehentlich einmal Es ist ein guter Schachzug.
Terminal
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [2]Hosei Universität, [3]Waseda Universität, [4]Rikkyo Universität]
3
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [2]Hosei Universität, [4]Rikkyo Universität]
4
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 3 out of bounds for length 3
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
at java.base/java.util.Objects.checkIndex(Objects.java:359)
at java.base/java.util.ArrayList.remove(ArrayList.java:504)
at Test4.main(Test4.java:23)
↑ Es gab ein Problem. Wenn Sie nach einem Fehler 4 auswählen, besteht eine Diskrepanz zwischen der Nummer (2) im Array und der eingegebenen Nummer (3), da dies das dritte Element im Array ist.
Diese Korrektur ist nach heutigem Kenntnisstand schwierig, daher schmerzhaft, aber ich habe es so gemacht.
Test4.java
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
class Test4 {
public static void main(String args[]) {
List<String> array = new ArrayList<String>();
array.add("[1]Meiji Universität");
array.add("[2]Hosei Universität");
array.add("[3]Waseda Universität");
array.add("[4]Rikkyo Universität");
for (int i = 0; i <= 3; i++) {
System.out.println("Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?");
System.out.println(array);
Integer number = new Scanner(System.in).nextInt();
if (number == 1) {
System.out.println("Ist die richtige Antwort!");
break;
} else {
array.set(number - 1, "");
System.out.println("Das ist falsch");
System.out.println("Bitte wählen Sie die Nummer erneut.");
}
}
}
}
Ich habe das Element mit array.remove (Nummer -1) entfernt. Durch Erstellen eines Leerzeichens mit array.set (Nummer --1, ""); wurde die Abweichung in der Anzahl der Elemente beseitigt.
Terminal
[[1]Meiji Universität, [2]Hosei Universität, [3]Waseda Universität, [4]Rikkyo Universität]
2
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, , [3]Waseda Universität, [4]Rikkyo Universität]
3
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, , , [4]Rikkyo Universität]
4
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, , , ]
1
Ist die richtige Antwort!
Es ist nicht ideal, aber lass es uns tun!
Als nächstes verbessern Sie ③.
Test5.java
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
class Test5 {
public static void main(String args[]) {
List<String> array01 = new ArrayList<String>();
array01.add("[1]Meiji Universität");
array01.add("[2]Hosei Universität");
array01.add("[3]Waseda Universität");
array01.add("[4]Rikkyo Universität");
for (int i = 0; i <= 3; i++) {
System.out.println("Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?");
System.out.println(array01);
Integer number = new Scanner(System.in).nextInt();
if (number == 1) {
System.out.println("Ist die richtige Antwort!");
break;
} else {
array01.set(number - 1, "");
System.out.println("Das ist falsch");
System.out.println("Bitte wählen Sie die Nummer erneut.");
}
}
List<String> array02 = new ArrayList<String>();
array02.add("[1]Meiji Universität");
array02.add("[2]Hosei Universität");
array02.add("[3]Toyo Universität");
array02.add("[4]Asia University");
for (int i = 0; i <= 3; i++) {
System.out.println("Von welcher Universität kam Ugusa, der 2019 Zweiter im Entwurf ist?");
System.out.println(array02);
Integer number = new Scanner(System.in).nextInt();
if (number == 2) {
System.out.println("Ist die richtige Antwort!");
break;
} else {
array02.set(number - 1, "");
System.out.println("Das ist falsch");
System.out.println("Bitte wählen Sie die Nummer erneut.");
}
}
List<String> array03 = new ArrayList<String>();
array03.add("[1]Hanasaki Tokuei High School");
array03.add("[2]Tsuruga Kibi High School");
array03.add("[3]Kasumigaura High School");
array03.add("[4]Ofunato High School");
for (int i = 0; i <= 3; i++) {
System.out.println("Von welcher High School kam Suzuki, der im Entwurf von 2019 Dritter ist?");
System.out.println(array03);
Integer number = new Scanner(System.in).nextInt();
if (number == 3) {
System.out.println("Ist die richtige Antwort!");
break;
} else {
array03.set(number - 1, "");
System.out.println("Das ist falsch");
System.out.println("Bitte wählen Sie die Nummer erneut.");
}
}
}
}
Terminal
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, [2]Hosei Universität, [3]Waseda Universität, [4]Rikkyo Universität]
2
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Morishita, die im Entwurf von 2019 den ersten Platz belegte?
[[1]Meiji Universität, , [3]Waseda Universität, [4]Rikkyo Universität]
1
Ist die richtige Antwort!
Von welcher Universität kam Ugusa, der 2019 Zweiter im Entwurf ist?
[[1]Meiji Universität, [2]Hosei Universität, [3]Toyo Universität, [4]Asia University]
1
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Ugusa, der 2019 Zweiter im Entwurf ist?
[, [2]Hosei Universität, [3]Toyo Universität, [4]Asia University]
3
Das ist falsch
Bitte wählen Sie die Nummer erneut.
Von welcher Universität kam Ugusa, der 2019 Zweiter im Entwurf ist?
[, [2]Hosei Universität, , [4]Asia University]
2
Ist die richtige Antwort!
Von welcher High School kam Suzuki, der im Entwurf von 2019 Dritter ist?
[[1]Hanasaki Tokuei High School, [2]Tsuruga Kibi High School, [3]Kasumigaura High School, [4]Ofunato High School]
3
Ist die richtige Antwort!
Vorerst habe ich versucht, drei gleiche Funktionen zu arrangieren. Es gibt kein Problem als Funktion. Ich denke jedoch, dass es etwas kompakter gemacht werden kann. vielleicht.
Ich fand das heraus, als ich nachforschte. Zuerst dachte ich, es sei dasselbe. 【der Unterschied】 -ArrayList hat eine variable Größe (Anzahl der Elemente) ・ Die Deklarationsmethode ist unterschiedlich -ArrayList enthält keine primitiven Typen Primitiver Typ Wertetyp wie int und boolean
Recommended Posts