las ich eine Textdatei, die wie folgt aussieht:liest Textdatei und konvertieren 2d int Array je nach Eingabe in Java
operationName1 Value
Es gibt eine variable Anzahl von Zeilen, mit verschiedenen Operationen und entsprechendem Wert. Ich kann die Datei lesen und ein 2D-String-Array als Ausgabe erhalten. Das ist mein Code.
try{
Path path = Paths.get("./myFile.txt");
String[][] array = Files.lines(path)
.map(s -> s.split("\\s+", 2))
.map(a -> new String[]{a[0], a[1]})
.toArray(String[][]::new);
}catch(IOException e){
}
Frage: Wie kann ich den Code ändern, anstatt ein 2d int-Array zu erhalten, wo operationName1 wäre „0“ und operationName2 wäre „1“ (es gibt nur zwei mögliche Operation, die jeweils durch eine bestimmte Zeichenfolge)?
Diese Textdatei:
operationOne 5
OtherOp 999
operationOne 8
operationOne 2
dass 2d int Array werden würde:
[[0,5],[1,999],[0,8],[0,2]]
Der Index ist auch wichtig. Die erste Zeile der Textdatei ist also die erste Zeile meines Arrays.
PS: Wenn es eine bessere Syntax (eine neuere) gibt, bin ich offen für Vorschläge.
Vielen Dank.
Hey David, warum nicht verwenden, um die Antwort aus der vorherige Frage sein, und es anpassen? –
Sie haben den Wert in 'a [0]'. Testen Sie, was dieser Wert ist und ordnen Sie ihn der entsprechenden Nummer entweder 0 oder 1 zu. –
Warum versuchen Sie Streams hier zu verwenden? Planen Sie Parallelität? Wenn nicht, dann wäre wahrscheinlich eine einfache Schleife viel besser lesbar (und wahrscheinlich auch etwas schneller). – Pshemo