Wie Sie die ganze Reihe von Elementen in 2d-array
Ich experimentiere mit arrays und während ich herausfinden kann, wie Sie die Elemente eines 2d-Arrays, basierend auf Benutzereingaben, ich kann nicht herausfinden, wie um den Benutzer aufzufordern, separat geben Sie ganze Zeilen aus 2d-array (mit einem Leerzeichen zwischen jeder Nummer) anstatt Eingabe jeder Nummer die EINGABETASTE drücken. Könnte ich hier etwas Hilfe? Ich weiß, das wird auf meinem nächsten test, danke Jungs!
Hier ist mein code:
import java.util.Scanner;
public class NewArray
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of rows: ");
int Rows = input.nextInt();
System.out.print("Enter the number of columns: ");
int Columns = input.nextInt();
int[][] array = new int[Rows][Columns];
System.out.println("Enter the numbers in array: ");
for (int i = 0; i < array.length; i++)
{
for (int j = 0; j < array[i].length; j++)
array[i][j] = input.nextInt();
}
System.out.println(isConsecutiveFour(array));
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie es auch durch die Einnahme der jede Zeile als einen Eingang und dann mit Trennzeichen nehmen Sie die Eingabe Zeichen für Zeichen.
z.B.
oder Sie können tun,
array[i][j] = s ist.charAt(j) - '0';
Schleife
rows
mal, undString l = input.nextLine();
split den string mit Trennzeichen (Leerzeichen oder Komma oder Semikolon kann man definieren).
natürlich, Umsetzung von Validierungs-Logik. e.g Nan Fall, geschlitzten array-Größe passt nicht
columns
Fall, etc.btw, basierend auf java-Namenskonvention, besser mit
rows
,columns
als Namen. sonst sehen Sie aus wie Klassen....Gut, Sie verleiten könnte, Sie für jede Zeile...
Ausgabe
Einen Weg, das zu tun, was Sie Fragen, ist die Eingabe das, was Sie geben, als eine ganze Zeile. Dann schauen Sie auf die Zeile, und überprüfen Sie für genügend Werte und nicht in irgendeiner Weise, wenn Sie nicht geben Sie es, wie Sie wnat.
Das problem ist, dass es wirklich irritierend für die Nutzer. Was ist, wenn es 10 zahlen, und Sie geben 9 oder 11, weil einer miscount oder ein extra Raum, wo sollte eine Frist sein? Was werden Sie tun?
Viel hängt davon ab, wie dein Programm reagiert auf den Benutzer, es nicht zu tun "rechts".
Also, wenn Sie zu viele haben, können Sie das echo der ersten zahlen (bis zu der gewünschten Nummer) und Fragen, ob seine ok, um nur diese zu nutzen. Sie beantworten Sie dann Y oder N.
Wenn Sie geben Sie zu wenig, Sie könnte das echo diejenigen, die Sie eingegeben und dann Fragen, für etwas mehr zahlen, um das ausfüllen der erforderlichen Anzahl.
All dies verwandelt sich in eine große Menge code zu schreiben, und es kann persnickety--man muss es nur richtig oder, wieder, es verwirrt den Benutzer.
Andere mögliche Lösung ist, lassen Sie Sie geben Sie Sie eins nach dem anderen, und Sie echo-Informationen zu Ihnen, damit Sie wissen, wo Sie sind. So etwas wie "Bitte geben Sie element 4 in Zeile 3:" würde Ihnen helfen, im Auge behalten.
Vielleicht je mehr man schaut, desto mehr können Sie den Wert des heute üblichen Benutzeroberflächen, ob für standalone-Anwendungen oder web-Anwendungen. Auf dem web, zum Beispiel, können Sie zeigen, dass Sie eine form mit Zeilen und Spalten von text-Boxen und einfach anzuzeigen, dass die Seite, wenn einige Felder nicht ausgefüllt, rechts. Die Konsole basierte Benutzeroberfläche verwendet wurde, vor vielen Jahren, aber es lässt viel zu wünschen übrig.