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. Vielleicht hilft dir dieses Buch hier weiter.
  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;
    }
     
  8. Wenn du Java lernen möchtest, empfehlen wir dir dieses Buch hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Java zweidimensionales Array - Ähnliche Themen

Abhängigkeiten überprüfen auf Kompatibilität mit einer anderen Java-Version
Abhängigkeiten überprüfen auf Kompatibilität mit einer anderen Java-Version im Forum Deployment
Suche Hilfe für meine Bachelorarbeit Java
Suche Hilfe für meine Bachelorarbeit Java im Forum Private Stellangebote und Stellensuche von Usern
Rapid Development in Java?
Rapid Development in Java? im Forum Java Basics - Anfänger-Themen
Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert?
Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert? im Forum Allgemeines EE
neue Lizenzpflicht Java
neue Lizenzpflicht Java im Forum Allgemeine Java-Themen
Thema: Java zweidimensionales Array