Spalte aus Array

Lapuch

Mitglied
Hallo,
ich bin neu hier und wollte Ihre Hilfe in Anspruch nehmen. Brauche ein Tipp wie ich aus einem 2d double Array eine Spalte an die Variable in andere Methode übergeben kann.
Array kann z.B. so aussehen:
(x y z)
12 14 15
13 16 18
14 18 21

Und ich will einer Variable A die Werte von y zuweisen (A= matrix[1];).
Oder muss ich statt Variable A ein Array A[] einsetzen?!
Java:
public class Test {
  
  public static void Berechnen(){
   double matrix[][] = new double[3][3];
      matrix[0][0] = 12;
      matrix[0][1] = 14;
      matrix[0][2] = 15;
      matrix[1][0] = 13;
      matrix[1][1] = 16;
      matrix[1][2] = 18;   
      matrix[2][0] = 14;
      matrix[2][1] = 18;
      matrix[2][2] = 21;    
}

public static void main(String[] args) {
      for(int i=0; i<2;i++){
 A= Test.Berechnen(matrix[i][1]); 
}
 double G=A*2-3;
   }
}
Ich weiß, dass A= Test.Berechnen(matrix[1]); nicht geht, aber wie kann ich es korrekt schreiben?!
 
Zuletzt bearbeitet:

StupidAttack

Bekanntes Mitglied
Doch muss gehen. Achte einfach darauf, dass deine variable A vom Typ double ist:

Java:
double A;
A = matrix[i][1];  //nimmt allerdings immer nur 1 Wert auf


Java:
double A[20];
final int y = 1;

for(int i = 0; i < A.length; i++) {
A[i] = matrix[y][i];  //nimmt alle Werte in deiner y-Spalte auf
}

meintest du das?

Grüsse
 

Final_Striker

Top Contributor
Vllt so etwas, wobei ich nicht verstehe was du machen willst.

Java:
public class Test {
  
   double matrix[][] = new double[3][3];
      matrix[0][0] = 12;
      matrix[0][1] = 14;
      matrix[0][2] = 15;
      matrix[1][0] = 13;
      matrix[1][1] = 16;
      matrix[1][2] = 18;   
      matrix[2][0] = 14;
      matrix[2][1] = 18;
      matrix[2][2] = 21;   

  public static double berechnen(double d){
       // mache was
   }

   public static void main(String[] args) {
      double a = 0;
      for(int i=0; i<2;i++){
         a = Test.berechne(matrix[i][1]); 
      }
      double G=a*2-3;
   }
}

Du solltest dir nochmal die Java Grundlagen durchlesen, in deinem Code ist so ziemlich alles falsch.
 

Lapuch

Mitglied
Ich weiß, dass mein Quelltext nicht hinhauet, mir geht es nur darum, dass ich eine Variable A die Werte von 2. Spalte zuweise und versuche es so zusagen learning by doing. Ich bitte nicht mein Quelltext zu korrigieren, sondern mir ein Beispiel zu geben. Wo ich sehen kann wie die Werte aus 2d Array z.B. spalten-bzw. zeilenweise einer Variable zugewiesen werden können.
 

fdsa

Mitglied
Wenn du eine Spalte übergeben willst, erhält berechnen ein eindimensionals Array. Ein 2d-Array is nämlich ein Array aus Arrays. Also etwa so...

Java:
   public static void main(String[] args) {
      double a = 0;
      for(int i=0; i<2;i++){
         a = Test.berechnen(matrix[i]); 
      }
      double G=a*2-3;
   }


 public static double berechnen(double[] d){
       // mache was z.B. alle elemente vom d summieren
      double sum;
      for (int i; i<d.lenght; i++){
            sum = d[i] +sum;
      }
      return sum;
   }

im Moment übergibst du ein einzelnes elements vom matrix (eine double).
 
Hm, was genau willst Du machen?

A) Einer Variablen einen Wert aus einer Spalte der Matrix zuweisen.

B) Einer Variablen die Summe aus einer Spalte der Matrix zuweisen.

C) Einer Variablen die Spalte einer Matrix zuweisen (die Variable ist dann also selbst ein eindimensionales array).

Im Moment rate ich ein bißchen herum...
 

Lapuch

Mitglied
In Großem und Ganzem will ich die erste Spalte aus Matrix einer Variable X zuweisen und die 2. Y und die 3. Z, um dann in anderen Methoden bei Bedarf diese Variablen einzusetzen. Am Anfang wollte ich praktisch genau das was fdsa gemacht hat (Einer Variablen die Spalte einer Matrix zuweisen), aber die Zuweisung für G findet in der andere Methode oder die Zuweisung findet in der gleiche Methode aber ich muss mit G in anderen Methoden rechnen können. Die Werte habe ich schon zugewiesen, aber in anderen Methoden werden die Werte nicht gesetzt. Also meine große Frage ist, wie kann ich gezielt den Wert von einer Variable in anderen Methoden verwenden?
 
Zuletzt bearbeitet:
Du meinst also "C". So zum Beispiel?

Java:
public class Main {

    // Die Matrix
    static double [][] matrix = {{12,14,15},{13,16,18},{14,18,21}};

    // Hier wird beispielhaft die Summe einer Spalte berechnet.
    static double irgendwasBerechnen (double [] a) {
        double summe = 0;
        for (double d : a) {
            summe = summe + d;
        }
        return summe;
    }

    // Diese Methode dient nur zum hübscheren Ausgeben.
    static String arrayAusgeben (double [] a) {
        StringBuilder s = new StringBuilder ("");
        for (double r : a) {
            s = s.append(' ').append(r);
        }
        return s.toString().trim ();
    }

    // Diese Methode dient nur zum hübscheren Ausgeben.
    static String matrixAusgeben (double [][] a) {
        StringBuilder s = new StringBuilder ("");
        for (double [] r : a) {
            s = s.append(arrayAusgeben (r));
            s = s.append (" | ");
        }
        return s.toString().substring(0, s.length()-3);
    }

    public static void main(String[] args) {
        // Die erste Spalte der Matrix (Spalte 0)
        double [] spalte = matrix [0];
        System.out.println("Die Matrix:");
        System.out.println(matrixAusgeben (matrix));
        System.out.println("Die Spalte 0:");
        System.out.println(arrayAusgeben (spalte));
        System.out.println("Die Summe der Spalte 0:");
        System.out.println(irgendwasBerechnen (spalte));
    }

}
 

Lapuch

Mitglied
Danke für eure Hilfe und die zahlreiche Beispiele aber ich stelle mir immer noch die Frage:Wie kann ich dem Programm sagen, dass in der Methode berechnen() die Werte aus auslesen() eingesetzt werden.

Java:
public class Main {
public static Double A;
public static void auslesen() throws IOException {
hier wird ein Datei ausgelesen und die Werte der Variable A zugewiesen 
und zur Kontrolle habe  ich auch die Variable ausgegeben (System.out.println(A);)
die Zuweisung verläuft problemlos.
}
public static void berechnen(){
und hier sollen die zugewiesene Werte aus auslesen() zum Rechnen eingesetzt, z.B.
double G=A (aus auslesen)*2;
System.outprintln(G);
}

public static void main(String[] args) throws IOException {
                 Main.berechnen(); 
    }
}
 

ARadauer

Top Contributor
Wie kann ich dem Programm sagen, dass in der Methode berechnen() die Werte aus auslesen() eingesetzt werden.
auslesen muss halt einen rückgabe wert haben und diesen übergibst du dann berrechnen...
Java:
public class Test2 {

   public static void main(String[] args) throws IOException {
      float quelle = auslesen();
      float ergebniss = berechnen(quelle);
      ausgeben(ergebniss);
   }
   
   public static float auslesen(){
      return 12.3f; //wurde irgendwo ausgelesen
      
   }
   public static float berechnen(float wert){
      return wert*2;
   }
   
   public static void ausgeben(float wert){
      System.out.println(wert);
   }

}
 

ARadauer

Top Contributor
Java:
// Die erste Spalte der Matrix (Spalte 0)
        double [] spalte = matrix [0];
das ist nicht die Spalte... das ist die erste Zeile...

das währe meiner Meinung nach die Spalte...

Java:
int spaltenIndex = 0;
      double[] spalte = new double[matrix.length];
      for(int i = 0; i < matrix.length; i++){
         spalte[i] = matrix[i][spaltenIndex];
      }
 

Lapuch

Mitglied
Das ist sehr gutes Beispiel! Ich habe jetzt folgenden Quelltext:
[JAVA=42] public class Main {

public static void main(String[] args) throws IOException {

double ergebniss = berechnen();
ausgeben(ergebniss);
}

public static double auslesen(){
double G=0;
for(int i=0; i<5;i++){
G=1+i;
// was muss hier stehen?
}
return G; //wurde irgendwo ausgelesen

}
public static double berechnen(){
double G = auslesen();
double X=0;
X= G*2+3;

return X;
}

public static void ausgeben(double wert){
System.out.println(wert);
}


} [/code]
Vielleicht könnt Ihr mir noch sagen, was muss ich in der Schleife schreiben, damit bei der Berechnung alle Werte habe und nicht nur den letzten.
 

Flown

Administrator
Mitarbeiter
Vielleicht könnt Ihr mir noch sagen, was muss ich in der Schleife schreiben, damit bei der Berechnung alle Werte habe und nicht nur den letzten.

Java:
public class Main {

	public static void main(String[] args) throws IOException {

		double[] ergebniss = berechnen();
		ausgeben(ergebniss);
	}

	public static double[] auslesen() {
		int length = 5;
		double G[] = new double[length];
		for (int i = 0; i < length; i++) {
			G[i] = 1 + i;
			// meinst du das?
		}
		return G; // wurde irgendwo ausgelesen

	}

	public static double[] berechnen() {
		double[] G = auslesen();
		double[] X = new double[G.length];
		for (int i = 0; i < G.length; i++) {
			X[i] = G[i] * 2 + 3;
		}
		return X;
	}

	public static void ausgeben(double[] wert) {
		for (int i = 0; i < wert.length; i++) {
			System.out.println(wert[i]); //EDIT
		}
	}
}
 
Zuletzt bearbeitet:

Lapuch

Mitglied
Ok, danke noch vielmals an alle, ich versuch`s nochmal meinen Quelltext neu mit Array`s zu entwerfen. Könnt Ihr mir noch ein Tipp geben, was man machen kann um aus einer Methode mehrere Werte zurück zu geben (ich weiß, dass in Java eine Methode nur ein Wert zurück gibt). Aber was kann man machen, wenn die als einziges Unterschied die Variable hat, die ausgegeben werden soll?!
 

Lapuch

Mitglied
Ich habe die Aufgabe jetzt so gelöst:

[JAVA=42]

public class Main {

public static double [][]Daten=new double[8][60];

public static double[][] Daten () throws IOException {
hier habe ich Datei eingelesen und die Berechnungen durch geführt. Für die Ausgabe habe ich ein 2d
Array erstellt und im die Werte von Array’s (A bis G) ,die ich berechnet habe, zugewiesen.

for ( int i=0;i < length;i++){
Daten[0]=A;
Daten[1]=B;
Daten[2]=C;
Daten[3]=D;
Daten[4]=E;
Daten[5]=F;
Daten[6]=G;
Daten[7]= H;
System.out.println(Daten[7]); //Kontrolle der Ausgabe => funktioniert
}
return Daten;
}

Public static double [] Wert {
int length =60;
double K[]=new double[length];
double B[];
double A[];
for ( int i=0;i < length;i++){

A=Main.Daten(Daten[0]);
B=Main.Daten(Daten[1]);

K=B/2*A ;
}
return K;
}


} [/code]

Und es kommt die Meldung, dass die Methode Daten nicht so angewandt werden kann. Was habe ich schon wieder falsch gemacht?
 

Lapuch

Mitglied
Wieso, stimmt es nicht? Ich übergebe doch die Werte aus A der ersten Spalte aus Daten und so weiter. Durch die Ausgabe (System.out.println(Daten[1]);) kann ich die Werte von A sehen und ausgegeben wird ja Daten[1] . Wenn es nicht funktioniert wie kann ich es besser machen?
 

Lapuch

Mitglied
habe jetzt so gelöst:
[JAVA=42]
double k[] = new double[length];
double [][] data = daten ();

for (int i = 0; i < length; i++)
{
double a = data [0];
double b = data [1];
.....
[/code]
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O 2D-Array nach einer Spalte sortieren Java Basics - Anfänger-Themen 22
K Compiler-Fehler Durchschnitt einer Spalte in einem 2D-Array Java Basics - Anfänger-Themen 1
B Zweidimensionales Array Elemente jeder Spalte zählen Java Basics - Anfänger-Themen 9
J 2D Array - Zeile+Spalte Streichen Java Basics - Anfänger-Themen 2
M Spalte aus 2d array übergeben Java Basics - Anfänger-Themen 4
A String[] array in vertikale Spalte einer JTable ausgeben? Java Basics - Anfänger-Themen 8
D erste spalte eines zweidimensionales Array sortieren ??!! Java Basics - Anfänger-Themen 2
E Datenbank Spalte zusammenzählen Java Basics - Anfänger-Themen 2
J PdfTable Spalte höher stellen Java Basics - Anfänger-Themen 2
B jTable Spalte summieren Java Basics - Anfänger-Themen 7
K Apache POI Excel Letzte Reihe einer bestimmten Spalte Java Basics - Anfänger-Themen 1
B Wieso wird die Zeile "column" genannt und die Spalte "line"? Java Basics - Anfänger-Themen 12
J Durchschnitt jeder Zeile und und Spalte in einem 2D Arrays berechnen Java Basics - Anfänger-Themen 6
K Collections Sortieren nach zweiter Spalte in JTable Java Basics - Anfänger-Themen 18
S Eine Spalte einer CSV Datei ausgeben Java Basics - Anfänger-Themen 2
C Datei mit Daten einlesen und höchsten wert der zweiten Spalte ermitteln Java Basics - Anfänger-Themen 1
G Spalte in JTable unsichtbar machen, Zugriff auf Daten ermöglichen Java Basics - Anfänger-Themen 2
A Button in eine bestimmte Spalte platzieren Java Basics - Anfänger-Themen 4
Rayo Lese Zahl in Zeile x aus Spalte y ein! Java Basics - Anfänger-Themen 36
M JTable einzelne Spalte rechtsbündig Java Basics - Anfänger-Themen 2
Kenan89 JTable Spalte nicht editierbar Java Basics - Anfänger-Themen 7
C Spalte einer Textdatei einlesen Java Basics - Anfänger-Themen 10
H JTable Spalte fixieren Java Basics - Anfänger-Themen 2
F ComboBox sowie String in einer JTable Spalte Java Basics - Anfänger-Themen 2
B Werte einer Spalte aus DB in einen Vector schreiben Java Basics - Anfänger-Themen 15
Z Focus auf die letze Spalte Java Basics - Anfänger-Themen 9
Z JTable Spalte ausblenden Java Basics - Anfänger-Themen 5
Garret DefaultListModel als Spalte in JTable anzeigen lassen Java Basics - Anfänger-Themen 27
M JTable Spalte ist bigDecimal Java Basics - Anfänger-Themen 2
R java Spalte-, Zeilebearbeitung von txt Dateien Java Basics - Anfänger-Themen 4
F 2DArray jede Spalte Addieren Java Basics - Anfänger-Themen 8
G Problem beim Spalte hinzufügen in meiner tabelle. Java Basics - Anfänger-Themen 6
B Ausgewählte Spalte aus JTable abfragen Java Basics - Anfänger-Themen 9
D Checkbox in JTable(Spalte) einfügen. Java Basics - Anfänger-Themen 2
B Komponenten einer Zeile, Spalte des GridLayouts hinzufügen Java Basics - Anfänger-Themen 3
C Anstatt Spalte, Zeile mit Comparator sortieren . Java Basics - Anfänger-Themen 5
N Ermitteln der Spaltenbreite => DATE-Spalte hat Länge 8 ?! Java Basics - Anfänger-Themen 10
G JTable Reihe und Spalte Java Basics - Anfänger-Themen 7
M renderer macht nur 1 spalte bunt Java Basics - Anfänger-Themen 5
G 2 Fragen zu JTable (Spalte färben, Spalte entfernen) Java Basics - Anfänger-Themen 6
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
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 leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
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
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben