#1 1. November 2007 Array übergeben Hiho ich habe wieder ein kleines Problem. Ich möchte das Array einer anderen Methode übergeben nur leider weiß ich nicht genau wie Code: public class main { private double [b]???[/b]; public static void main(String[] args) { } private void array( [b]???[/b] ){ double[][] pruefung = { {0.0, 43.0, 4.0} }; } private double rechne(){ //berechnung } } Es soll nur das Array übergeben werden damit ich in der Methode rechne damit arbeiten kann z.B. die 3 Werte zusammen rechnen z.B. Wäre sehr nett, bewertung ist sicher!^^ mfg //edit habe einiges gefunden nur nicht genau dies. + Multi-Zitat Zitieren
#2 1. November 2007 AW: Array übergeben Hallo klaiser, habe vor ner kleinen Ewigkeit mal mit Java programmiert. Versuchs mal so: Code: public class main { private double ???; public static void main(String[] args) { } private void array(){ double[][] zuPruefen = { {0.0, 43.0, 4.0} }; rechne(zuPruefen); } private double rechne(Double[][] zuPruefen){ //berechnung //tuh etwas mit zuPruefen } } Hoffe das hilft. BG MaxDev //Edit: Formatierung war doof. + Multi-Zitat Zitieren
#3 1. November 2007 AW: Array übergeben Der Compiler sagt mir ein falscher Ausdruck ist gegeben: Code: public class main { public static void main(String[] args) { [b]private double array(){[/b] double[][] pruefung = { {0.0, 43.0, 4.0} }; rechne(pruefung); } private void rechne(double[][] pruefung){ } } aber sehen tue ich kein Fehler, vielleicht habe ich ihn nur übersehen. mfg + Multi-Zitat Zitieren
#4 1. November 2007 AW: Array übergeben Hallo! Dein Fehler Die function "private double array(){}" hat als returnwert einen double-wert! es wird aber nirgendwo ein return durchgeführt. also entweder du machst die funktion "void" (private void array(){}) oder du gibst einen doublewert zurück. Ausserdem wird in deiner funktion ein doppel-feld (feld[][]) erstellt, wo aber nur eine dimension genutzt ist. hier würde sich einfach nur feld[] anbieten, wo du dann auf die indizes eindimensional zugreifen könntest. Um ein Feld an eine funktion zu übergeben, schau dir folgenden source an. z.B. Code: public class Test{ public static void main(String args[]){ double Testarray[]={1,2,3}; //array erstellen testeArray(Testarray);//Testfunktion aufrufen } /*Hier wird die berechnung des Arrays durchgeführt, dabei ist egal wie das array vorher hieß, hier heisst es input[]*/ private void testeArray(double[] input){ //Berechnung durchführen mit input } } Ich hoffe ich konnte dir helfen Mfg - Idefix! + Multi-Zitat Zitieren
#5 1. November 2007 AW: Array übergeben Hi ich habe es zum testen übertragen es kommt aber ein Fehler: Test.java:12:13: non-static method testeArray(double[]) cannot be referenced from a static context Bewertung ist raus! + Multi-Zitat Zitieren
#6 1. November 2007 AW: Array übergeben hi, dann lege deine methoden ausserhalb der main ... nice day!! + Multi-Zitat Zitieren
#7 1. November 2007 AW: Array übergeben ich habe eine Objekt erstellt aber daraufhin gibt es noch mehr Fehler, leider bin ich mit Java noch nicht soweit vorgedrungen ein festes Wissen davon zu besitzen. + Multi-Zitat Zitieren
#8 1. November 2007 AW: Array übergeben dann nenne deine main-methode einfach nur "public void main(String args[]){}" static-methoden können auch ausserhalb einer klasse liegen und bieten somit eine höhere flexibilität innerhalb von java-projekten. andererseits sollte ein guter programmierer auf static-methoden verzichten, weil somit die eigentlich objekt-bezogenheit auf die java aufbaut, verloren geht(berichtigt mich wenn ich falsch liege). mfg - Idefix! + Multi-Zitat Zitieren
#9 2. November 2007 AW: Array übergeben naja es gibt sicher bestimmte anwendungsziel, wo es notwenig und auch logischer ist wenn man static methoden benützt. ich denke da z.b. an eine connect funktion + Multi-Zitat Zitieren