Aus einem 2 d array rausgreifen

ruffy

Mitglied
Hallo,
Mein Kumpel und ich basteln schon ewig dran rum, finden aber für unser Problem keine Lösung.

Also wir haben ein 15 * 10 großes 2 d array. jetzt sollen wir von einem bestimmten Punkt in diesem 2 d- array die 8 nachbarn raus finden. Also an Stelle [2] [2] wären die nachbarn [3][1]; [3][2]; [3][3]; [2][1][2][3]; [1][1]; [1][2]; [1][3]; Daduch, dass wir die nachbarn von einer beliebigen Stelle [j] rausfinden, würden wir einfach i und j so erhöhen/senken, dass die 8 nachbarn ausgegebn werden. Unser Problem ist es jetzt aber, wenn wir die nachbarn von Stelle [0] [0] (j =0) (i=0) haben möchen und dann ja i bzw. j senken er aus dem array rausgreift; Wir würden gerne für dieses rausgreifen den Wert - 1 -1 zurückgeben. Wie müssen wir das schreiben.
Ich wäre für ein schnelle und vorallem unkomplizierte Lösung sehr verbunden.

Mfg
 
G

Gast2

Gast
ihr könntet das mit ner Methode kapseln:
Java:
public int getArrayValue(int[][] arr, int i, int j) {
  if (Punkt i/j ungültig) return -1;
  return arr[i][j];
}
 

bERt0r

Top Contributor
Stell dir das Array als ein Schachbrett vor, steht die Figur in der Mitte ist alles Palleti.

Ich gebe die Position der Figur mal mit x/y an.
Problemstellen:
x==0 -> Linke Rand
x==10 -> Rechter Rand
y==0 -> Oberer Rand
y==15 -> Unterer Rand

Jetzt gilt es zu überprüfen welche dieser Bedingungen stimmen und demensprechend auf die Problemstellen zu reagieren.
 

ruffy

Mitglied
Danke für die Antworten; aber das wussten wir alles schon :)
Das Problem war dass unser 2 d array so aussah array[seat[0]][seat[1]]. Dann haben wir jetzt erstmal seat [0] als i und seat [1] als j gespeichert. dann konnten wir die if bediengung schreiben für jeden der 8nachbarn, dass i bzw. j - 1 bzw 15 ist, dass er dann -1 returnen soll ansonsten i und j richtig erhöhen bzw. senken soll.... I-wie hat es uns schon geholfen, die Frage zu stellen, da wir dann drauf gekommen sind seat[0] erstmal in i zu speichern ^^

Mfg
 

freez

Top Contributor
Du könntest natürlich auch einfach auf die ungültigen Zellen zugreifen und die fliegende ArrayIndexOutOfBoundException abfangen und entsprechend darauf reagieren, wie du es brauchst.

Ist allerdings nicht die schönste Variante, da du ja deine Rahmenbedingung kennst und diese Exception vermeiden solltest, damit sie nur in Ausnahmefällen fliegt. Für quick and dirty code ist es aber noch ok.
 
Zuletzt bearbeitet:
G

Gast2

Gast
Hm, Exceptions sollte man imho nicht zur Flusskontrolle benutzen. Grad solche Sachen wie falsche Arrayzugriffe kann man doch prima abfragen.
 

ruffy

Mitglied
Gut danke, habe es jetzt schon mit mehreren Schleifen und if-Bedingungen hinbekommen. Trotzdem würde mich interessieren, wie das mit den "abfangen" bzw. den Exceptions geht, da ich meine Variante etwas umständlich finde. Wäre cool, wenn mir das jemand kurz erklären könnte, ansonsten durchsuche ich auch mal das Internet danach.

MfG
 
G

Gast2

Gast
Statt:
Java:
public int getArrayValue(int[][] arr, int i, int j) {
  if (Punkt i/j ungültig) return -1;
  return arr[i][j];
}
hättest du dann sowas:
Java:
public int getArrayValue(int[][] arr, int i, int j) {
  try {
    return arr[i][j];
  catch (ArrayIndexOutOfBoundsException e) {
    return -1;
  }
}
Aber wie gesagt, sowas sollte man ohne Exceptions lösen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A 6. Element aus einem Array zurückgeben Java Basics - Anfänger-Themen 1
A Was bedeutet bei einem Array "int a [MAX][MAX];", Java Basics - Anfänger-Themen 7
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
A Elemente in einem Array Java Basics - Anfänger-Themen 5
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
Igig1 Wie lasse ich dir Werte in einem Array zusammenrücken? Java Basics - Anfänger-Themen 4
Igig1 Welche Werte sind als default Werte in einem Array, der als Datentyp eine Klasse hat? Java Basics - Anfänger-Themen 1
Schniffi Nur bestimmte Bilder aus einem Array auf Image Button anzeigen lassen Java Basics - Anfänger-Themen 3
B in einem Array den nächstgelegenen Wert zu einem eingabewert finden Java Basics - Anfänger-Themen 8
B Häufigkeit einzelner Zahlen in einem Array Java Basics - Anfänger-Themen 6
D Zufällige Auswahl aus einem angelegten Array? Java Basics - Anfänger-Themen 10
A Löschen von Leerzeichen in einem char array ohne methoden Java Basics - Anfänger-Themen 6
T Methode schreiben, die einem Array ein Stringelement hinzufügt, wenn dieses noch nicht enthalten ist. Java Basics - Anfänger-Themen 6
H Minimum in einem Array bestimmen Java Basics - Anfänger-Themen 7
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
G Methoden Methode die aus einem Array ein Index ausgibt? Java Basics - Anfänger-Themen 2
U Muster in einem Array erkennen Java Basics - Anfänger-Themen 8
Z Char Array an zufälligen stellen mit einem "x" füllen. Java Basics - Anfänger-Themen 4
J Elemente in einem 2D-Array summieren Java Basics - Anfänger-Themen 6
J String aus einem Array entfernen Java Basics - Anfänger-Themen 10
L Wie frage ich ab, ob in einem Array, Werte doppelt vorkommen? Java Basics - Anfänger-Themen 4
P Arraylist zu einem Array bringen mit Verschachtelung Java Basics - Anfänger-Themen 11
M Ist es möglich, das größte und zweitgrößte element in einem Array mit nur einer Schleife ausfindig zu machen ? Java Basics - Anfänger-Themen 19
H Objekt aus einem Array löschen Java Basics - Anfänger-Themen 1
L Anzahl der Elemente key in einem Array mit log(N) Laufzeit Java Basics - Anfänger-Themen 4
FelixN RegEx aus einem String als String-Array zurückgeben Java Basics - Anfänger-Themen 8
B Werte aus einem Unterprogramm in ein Array schreiben Java Basics - Anfänger-Themen 2
L Nur Bestimmte Werte aus einem Array in ein anderes Speichern Java Basics - Anfänger-Themen 11
F Summe in einem Array bestimmen Java Basics - Anfänger-Themen 3
D Alle Möglichkeiten, n-Anzahl aus Elementen aus einem Array zu wählen, ausgeben? Java Basics - Anfänger-Themen 23
D Werte aus einem BinärBaum in einem Array speichern Java Basics - Anfänger-Themen 1
E Zahlen von einem Array mit zahlen von zweitem Array vergleichen Java Basics - Anfänger-Themen 27
S Schiffe versenken - Zufallszahlen in einem Array Java Basics - Anfänger-Themen 6
Dilara_K Abstand zwischen den Doppelwerten in einem Array herausfinden Java Basics - Anfänger-Themen 20
T Schauen ob eine Ziffer in einem String-Array häufiger vorkommt Java Basics - Anfänger-Themen 8
P Input/Output Bestimmte Anzahl von Werten in einem Array an Methode übergeben Java Basics - Anfänger-Themen 2
N Methoden vorherigen Wert in einem Array lieferen Java Basics - Anfänger-Themen 8
P Aus einem Array zwei Arrays machen Java Basics - Anfänger-Themen 3
D Input/Output Array in einem String mit einem Trennzeichen verbinden Java Basics - Anfänger-Themen 17
M 2 Stellen in einem Array vergleichen und bei übereinstimmen eine davon ersetzen Java Basics - Anfänger-Themen 1
V Elemente aus einem Array mit null überschreiben Java Basics - Anfänger-Themen 4
K Compiler-Fehler Durchschnitt einer Spalte in einem 2D-Array Java Basics - Anfänger-Themen 1
A .txt Datei in einem Array speichern Java Basics - Anfänger-Themen 1
H Leere Eingabe in einem array Java Basics - Anfänger-Themen 11
B seltenes Vorkommen eines Integers in einem Array Java Basics - Anfänger-Themen 13
A Frage zu einem Array Java Basics - Anfänger-Themen 14
B Methoden Element aus einem Array löschen, Rest nach vorne verschieben? Java Basics - Anfänger-Themen 4
M Bestimmen, wie oft ein Char in einem Array vorkommt Java Basics - Anfänger-Themen 2
R Anzahl von Zeichen in einem Char Array Java Basics - Anfänger-Themen 4
L Linerae Suche in einem sortierten Array Java Basics - Anfänger-Themen 2
D Alle möglichen Kombinationen in einem Array ausgeben Java Basics - Anfänger-Themen 2
Y Gleiche Arrays aus einem Array mit Objekten Java Basics - Anfänger-Themen 5
F Methoden Kontaktliste - String in einem Array suchen und ausgeben Java Basics - Anfänger-Themen 3
B Binäre Suche in einem String Array Java Basics - Anfänger-Themen 10
C Abfrage nach einem Bild im Array Java Basics - Anfänger-Themen 9
C Rekursion auf einem Array(negative werte addieren) Java Basics - Anfänger-Themen 4
W JTable mit einem JButton-Array füllen Java Basics - Anfänger-Themen 4
D SetText Ausgabe von einem Array Java Basics - Anfänger-Themen 6
F Objekte in einem Array speichern Java Basics - Anfänger-Themen 1
E Summe der "Nachbarn" eines Wertes in einem Array bestimmen Java Basics - Anfänger-Themen 8
V Zwei Array in einem kopieren Java Basics - Anfänger-Themen 3
H n Zahlen aus einem Array addieren Java Basics - Anfänger-Themen 17
V Anzahl von gleichen Werten in einem Int-Array ermitteln Java Basics - Anfänger-Themen 4
1 Minimum aller Elemente in einem Array bestimmen Java Basics - Anfänger-Themen 10
J Inhalt in einem Text-File finden und in ein Array schreiben Java Basics - Anfänger-Themen 5
A Methoden Array: ausgeben von einem Wörterbucheintrag Java Basics - Anfänger-Themen 4
J In einem Array die größte Zahl ermitteln und Faktorisieren. Java Basics - Anfänger-Themen 5
M In Testklasse einem Array Werte übergeben Java Basics - Anfänger-Themen 6
J Methoden Einzelnen Wert aus Objekt aus einem Array auslesen und danach sortieren Java Basics - Anfänger-Themen 8
S Rückgabe von einem Array Java Basics - Anfänger-Themen 7
J Speichern von Würfelwürfen in einem Array Java Basics - Anfänger-Themen 5
F Einzelne Werte aus einem Array vergleichen? Java Basics - Anfänger-Themen 8
G String einem String Array übergeben Java Basics - Anfänger-Themen 3
G Element einem Array hinzufügen Java Basics - Anfänger-Themen 7
W Elemente in einem Array nach 'oben' verschieben Java Basics - Anfänger-Themen 9
I Objekte in einem Array sortieren Java Basics - Anfänger-Themen 19
D Eine Stelle eines Char- Arrays nach dem vorkommen in einem ganzem anderem Array überprüfen Java Basics - Anfänger-Themen 20
J Einem String-Array in einer for-Schleife Strings zuweisen - Klappt nicht in einer for-Schleife Java Basics - Anfänger-Themen 5
P String Sortieren in einem Array Java Basics - Anfänger-Themen 7
D Arrays zusammenfügen und in einem Array ausgeben Java Basics - Anfänger-Themen 3
T Mehrfach auftretende Zahlen in einem Array Java Basics - Anfänger-Themen 13
N Array problem bei einem magischen Quadrats Java Basics - Anfänger-Themen 3
M eine 1 von einem 2d Array subtrahieren Java Basics - Anfänger-Themen 11
I Erste Schritte Ein Zeichen in einem Array Suchen Java Basics - Anfänger-Themen 8
C Ausgabe von einem Array Java Basics - Anfänger-Themen 5
K Letzter element aus einem Array Java Basics - Anfänger-Themen 5
D Erste Schritte Warum wird bei einem Array die Länge über Length ausgegeben? Java Basics - Anfänger-Themen 6
J Alle Vorkommen eines chars in einem Array durch einen anderen char ersetzen Java Basics - Anfänger-Themen 10
P Variablen Wert vergleichen mit einem Array? Java Basics - Anfänger-Themen 13
R Teile aus einem mehrdimensionalen Array vergleichen Java Basics - Anfänger-Themen 3
B Werte aus JTextArea in einem String Array ablegen Java Basics - Anfänger-Themen 4
T OOP Objekte erzeugen und in einem Array ausgeben. Java Basics - Anfänger-Themen 2
S Zahl in einem Array farbig? Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben