String in mehrdimensionales Array

Delectation

Grünschnabel
Hallo
Hab das Problem, dass ich nicht weiter komme.
Ich soll einen Satz in ein mehrdimensionales Array einlesen, in Großbuchstaben und mit entfernten Leerzeichen. Danach soll es statt von links nach rechts, von oben nach unten in das Array eingetragen werden, um es zu verschlüsseln.
Momentan hab ich das hier

Code:
public class MehrArray {

  public static void main(String[] args) {

   char [][] zeichen = new char [5][5];
   int i,j;
   String input = new String();
    int len = input.length();
    System.out.println("Geben Sie den Satz ein!");
    input = StdIn.readln();
    input = input.toUpperCase();
    input=input.replaceAll("\\W","");
    
  }
}

Kann mir jemand helfen ? :(
 
Hi,

als erstes: Benutze bitte niemals new String(). Das verschwendet Speicher weil dazu explizit ein neues String Objekt angelegt wird was die interne Verwaltung der String Objekte in Java umgeht. Für selbe Strings gibt es nämlich ansonsten nur ein Objekt.

In deinem Code also besser:
Java:
String input = StdIn.readln();

Das mit dem in Großbuchstaben umwandeln hast du ja schon hinbekommen.

Wenn du aus deinem Satz ein Array machen willst welches die einzelnen Wörter ohne Leerzeichen enthält dann schau dir mal an was das hier tut:
Java:
String [] arr = input.split(" ");
System.out.println(Arrays.toString(arr));

Wenn du entsprechend aus einem Wort die einzelnen Buchstaben haben möchtest geht dies z.B. mit:
Java:
String [] arr ="Wort".split("");
System.out.println(Arrays.toString(arr));
 
Also, das erste hab ich gemacht, stimmt eigentlich, so kann man einen unnützen Schritt weglassen. Bei den anderen beiden bin ich mir nicht sicher, wie ich die einfügen soll. Es soll ja am Ende ein Satz in dem Array stehen, in etwa so:
HALLOM
EINNAM
EISTAL
usw.
 
Zurück