Java zweidimensionales Array

Diskutiere Java zweidimensionales Array im Java Basics - Anfänger-Themen Forum; public class initialisiereSchachbrett { public static char[][] initialisiereSchachbrettt(){ char a[][]=new char [8][8]; // [zeilen][spalten]...

  1. xSkyyline95
    xSkyyline95 Neues Mitglied
    Code (Java):
    public class initialisiereSchachbrett {

    public static char[][] initialisiereSchachbrettt(){
        char  a[][]=new char [8][8]; // [zeilen][spalten]
        for(int i=0;i<a.length;i++) {
           
            for(int j=0;j<a[i].length;j++) {
               
            a[i][j]= 'L';

            }

               for (int k=0; k<a[i].length;k++) {
            if (a[i][k] == a[1][k] || a[i][k] == a[6][k] ) {
            a[i][k] = 'B';
           
            }
               }
        }
        return a;      
    }
    }
     
    Hi habe folgendes Problem, ich weiß nicht ob des so passt oder nicht ??
    Aufgabenstellung lautet wie auf dem Bild.
    Oder geht es besser einfacher bzw. habe ich da was falsch gemacht ?
     

    Anhänge:

  2. Wenn du jetzt Java lernen möchtest, dann sichere dir hier unseren Java-Videokurs heute zum Sonderpreis (hier klicken!)
  3. httpdigest
    httpdigest Bekanntes Mitglied
    Falsch hast du nichts gemacht, kommt ja im Endeffekt das richtige raus. Es geht aber noch einfacher.
     
  4. xSkyyline95
    xSkyyline95 Neues Mitglied
    Hast du da eventuell eine einfachere Form die Zeit und Schreibarbeit spart ?
    bzw. bräuchte ich noch eine Ausgabe in der main-Methode die kriege ich einfach nicht.
     
    Zuletzt bearbeitet: 11. Jan. 2019
  5. httpdigest
    httpdigest Bekanntes Mitglied
    Schau dir hierzu mal Arrays.toString(char[]) und System.out.println() an. Dazu brauchst du noch eine for-Schleife, damit's schön wird.
     
  6. httpdigest
    httpdigest Bekanntes Mitglied
    Code (Java):
    public static char[][] initialisiereSchachbrettt() {
      return java.util.stream.IntStream
          .range(0, 8)
          .mapToObj(i -> java.util.stream.IntStream
              .range(0, 8)
              .mapToObj(x -> i == 1 || i == 6 ? "B" : "L")
              .collect(java.util.stream.Collectors.joining())
              .toCharArray())
          .toArray(char[][]::new);
    }
    Spart nicht unbedingt Schreibarbeit. :) Aber das wichtigste ist auch nicht die Schreibarbeit, sondern die Lesearbeit. Code wird sehr viel häufiger gelesen als geschrieben und somit sollte man das Hauptaugenmerk auf Verständlichkeit des Codes legen! Regel Nummer eins der Softwareentwicklung (hoffe ich zumindest)! :)
    Wobei man hier auch argumentieren kann, ob das jetzt so lesbarer ist. :D
     
  7. httpdigest
    httpdigest Bekanntes Mitglied
    Falls du es mit Schleifen möchtest, und vielleicht noch Arrays.fill(char[], char) zur Hilfe nehmen möchtest:
    Code (Java):
    public static char[][] initialisiereSchachbrettt2() {
      char a[][] = new char[8][8]; // [zeilen][spalten]
      for (int i = 0; i < a.length; i++)
        java.util.Arrays.fill(a[i], i == 1 || i == 6 ? 'B' : 'L');
      return a;
    }
     
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Java zweidimensionales Array - Ähnliche Themen

JavaFX Diagram Editor
JavaFX Diagram Editor im Forum AWT, Swing, JavaFX & SWT
Javascript/ Eventlistener ohne click?
Javascript/ Eventlistener ohne click? im Forum HTML / CSS / JScript / AJAX
Java Hauptprogramm und Unterprogramm
Java Hauptprogramm und Unterprogramm im Forum Java Basics - Anfänger-Themen
Problem mit SOAP / javax.xml importieren
Problem mit SOAP / javax.xml importieren im Forum Java Basics - Anfänger-Themen
Mit Java Mail Mails an Webmailer schicken
Mit Java Mail Mails an Webmailer schicken im Forum Netzwerkprogrammierung
Thema: Java zweidimensionales Array