mehrdimensionales Array, Matrix "invertieren"

Status
Nicht offen für weitere Antworten.
hallöchen,
ick hab folgendes Problem...und zwar soll aus
char[][] array = {
{ ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' },
{ ' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' ' },
{ ' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' ' },
{ ' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' ' },
{ ' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' ' },
{ ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ' },
{ 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X' },
{ ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ' },
{ ' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' ' },
{ ' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' ' },
{ ' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' ' },
{ ' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' ' },
{ ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' } };
eine inverteierte matrix schaffen. quasi das alle 'X' zu ' ' werden und umgekehrt.
Nun wir haben grade das thema array angefangen, somit habe ich auf dem gebeit noch kaum ahnung... 🙂
Momentan isses so, ich kann mir das einfach auch nich so wirklich im kopf vorstellen, wie ich da ran gehen könnte... Ausgabe und und das Klonen von Array klappt schon, aber mir ist nich klar, wie kann ich die einzelnen elemente verändern? Ich dachte schon über ne if abfrage, oder so... wenn ein element 'X' is, dann soll daraus ' ' werden, aber realisieren klappt einfach nich.

Leute , könnt ihr mir da helfen?? Ick düchrstöber hier schon ewig bücher und das netz, aber fehlt warscheinlich das verständis für arrays, n bisl ;-()
 
poste doch mal den Code zum Ausgeben, im Grunde muss da nur rein
Java:
char x = element i j
if (x == das eine) {
  x = das andere 
} else {
  x = das eine
}
element i j = x;
oder kürzer
Java:
element i j = ( element i j == das eine) ? das andere : das eine;
 
wow, da habe ich ja auch mal was gelernt,
Java:
public class Test
{
    public static void main(String[] args)
    {
        char[][] array =
            {
                {' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' '},
                {' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' '},
                {' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' '},
                {'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X'},
                {' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' '},
                {' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' '},
                {' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}};
        for (int i = 0; i < array.length; i++)
        {
            System.out.println(array[i]);
        }
    }
}
ergibt tatsächlich eine schöne Ausgabe
Code:
     X     
    XXX    
   XXXXX   
  XXXXXXX  
 XXXXXXXXX 
XXXXXXXXXXX
 XXXXXXXXX 
  XXXXXXX  
   XXXXX   
    XXX    
     X
während etwa
Java:
public class Test
{
    public static void main(String[] args)
    {
        int[][] array =
            {
                {' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' '},
                {' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' '},
                {' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' '},
                {'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X'},
                {' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' '},
                {' ', ' ', 'X', 'X', 'X', 'X', 'X', 'X', 'X', ' ', ' '},
                {' ', ' ', ' ', 'X', 'X', 'X', 'X', 'X', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', 'X', 'X', 'X', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', 'X', ' ', ' ', ' ', ' ', ' '},
                {' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '}};
        for (int i = 0; i < array.length; i++)
        {
            System.out.println(array[i]);
        }
    }
}
wie bei allen Arrays zu unschönen
Code:
[I@3e25a5
[I@19821f
[I@addbf1
[I@42e816
[I@9304b1
[I@190d11
[I@a90653
[I@de6ced
[I@c17164
[I@1fb8ee3
[I@61de33
[I@14318bb
[I@ca0b6
führt

-----


also du brauchst natürlich als Grundstruktur eine doppelte ineinander verschachtelte Schleife
Java:
for  i..
   for  j ..
     irgendwas mit array i j machen
  }
}
vorher geht gar nix mit zweidimensionen Arrays

----

edit:
geschlossen, bei Bedarf im anderen Thema weiter
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben