tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
18
ZUGRIFFE
660
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Hey,

    hab ganz neu angefangen Java zu lernen und würde jetzt gern einen String den ich in einer Methode einlese, in eine andere Methode übergeben um mit ihm dort dann zu arbeiten.

    Nur iregdnwie will es nicht so ganz klappen.


    Mal ein Beispiel:

    Das hab ich bis jetzt in meiner ersten Methode:

    beliebigerString = methode2(args[0], args[1]);


    und meine 2. Methode sieht so aus:

    private static int[][] methode2


    Was müsste ich jetzt in die 2. Methode schreiben, damit ich mit denStrings aus args[0] und args[1] arbeiten kann? Ich brauch das eingebene vorerst nur als String.

    Wie ich es in int umwandle weiß ich glaub ich.
     

  2. #2
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    so ganz verstehe ich Diene Frage nicht - zumal nicht klar, WAS Du eigentlich genau machen willst ....

    Zitat Zitat von blackpage Beitrag anzeigen
    Das hab ich bis jetzt in meiner ersten Methode:
    beliebigerString = methode2(args[0], args[1]);
    Diese Methode soll also zwei Strings bekommen und einen Beliebigen zurück liefern - soweit klar!

    Zitat Zitat von blackpage Beitrag anzeigen
    und meine 2. Methode sieht so aus:
    private static int[][] methode2
    Was müsste ich jetzt in die 2. Methode schreiben, damit ich mit denStrings aus args[0] und args[1] arbeiten kann? Ich brauch das eingebene vorerst nur als String.
    Code java:
    1
    2
    3
    4
    5
    6
    7
    
    private static int[][] methode2( String S1, String S2 )
    {
        // tue irgendwas
    }
     
    // Aufruf:
    int myArray[][] = methode2( args[0], args[1] );


    Zitat Zitat von blackpage Beitrag anzeigen
    Wie ich es in int umwandle weiß ich glaub ich
    Was genau meinst Du
    Sowas
    Code java:
    1
    2
    
    String strMyString = "123";
    int i = Integer.parseInt( strMyString );

    Gruß
    Klaus
    blackpage bedankt sich. 
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  3. #3
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Danke schonmal.

    Ich will nur wissen wie ich den String den ich in Methode 1 übergeben bekam , wie ich den in Methode 2 nutzen kann ohne, dass diese Fehlermeldung kommt "args cannot be resolved to a variable".

    Ich hab ein array in meiner 2. Methode, das so aussieht:

    int[][] arrayName = new int[3][3];

    jetzt will ich dem array den String an Stelle 0,0 und Stelle 1,1 zuweisen. Nur bekam ich ja den String in der anderen Methode übergeben. brauch ihn aber jetzt in Methode2

    arrayName[0][0]= args[0];
    arrayName[1][1]= args[1];


    Aber so funktioniert es nicht..
     

  4. #4
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    *** Benutze bitte die Code-Tags ****** ***

    Wenn Du die Strings, die an die erste Methode übergeben, auch in der Zweiten brauchst, dann musst Du sie halt - so wie oben von mir beschrieben - ebenfalls an die zweite Methode übergeben .....

    Das Umwandeln eines String in einen Integer (so es denn einer ist), steht auch in meinem ersten Post!

    Irgendwie verstehe ich Dein Problem noch nicht so ganz .... am Besten postet Du mal den gesamten Code und beschreibst genauer, was Du eigentlich machen willst !

    BTW: "Aber so funktioniert es nicht" ist KEINE Fehlerbeschreibung

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  5. #5
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    hey,
    ich hab aktuell keinen bestimmten Code, weil ich das Problem bei vielen habe, dass ich machen möchte.

    Hier mal einer der Codes:


    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    
    public class ZahlenSheet {
        public static void main(String[] args) {
            
                Zahlen = meineZahlen(args[0], args[1]);
                
            
    }
     
    private static int[][] meineZahlen {
        
        
    int[][] meinArray = new int[2][2]
     
            
            
    meinArray[0][0] =args[0]
    meinArray[1][0] =args[1]
     
     
    int x=meinArray[0][0]
    int y=meinArray[1][0]
     
     
    int ergebnis =x*y;
     
     
    }
    }


    Nun will ich einfach, dass in mein Array die Zahlen reingehen, die in der ersten Methode als args0 und args1 vorliegen.
     

  6. #6
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    353
    Hallo blackpage,

    Deine Definition von meineZahlen hat keinen gültigen Funktionskopf. Ein Funktionskopf sieht folgendermassen aus:
    Code java:
    1
    
    modifizierer rückgabetype name(parameter)

    Wenn du also offensichtlich 2 Strings an die Funktion übergeben willst, dann musst du das auch so angeben:
    Code java:
    1
    2
    3
    
    private static int[][] meineZahlen(String str1, String str2) {
       // ...
    }

    Ich würde dir vorschlagen dass du dir mal ein (e)Buch zulegst mit den nötigen Grundlagen. Hier zum Beispiel findest du bereits alles wichtige:
    http://openbook.galileocomputing.de/javainsel/

    Gruss
    Muepe
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  7. #7
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    Dein Code
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    
    // hier fehlen übrigens die meisten abschließenden Semikolon
    public class ZahlenSheet 
    {
        public static void main(String[] args) 
        {
        Zahlen = meineZahlen(args[0], args[1]);
        }
     
        private static int[][] meineZahlen // hier fehlt die Parameterliste !
        {
            int[][] meinArray = new int[2][2] // wieso denn zweidimensional ?
            
            meinArray[0][0] =args[0] // 'args' sind Strings, passen also so nicht 
            meinArray[1][0] =args[1] // in ein int-Array !
     
            int x = meinArray[0][0]
            int y = meinArray[1][0]
      
            int ergebnis =x*y;
        
        // return-Anweisung fehlt für die Rückgabe
        // sollen die einzelnen Zahlen oder deren Produkt zurückgegeben werden ?
        }
    }

    Schau mal hier :
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    public class ZahlenSheet 
    {
        public static void main(String[] args) 
        {
        int iZahl = meineZahlen(args[0], args[1]);
        }
     
        private static int meineZahlen( String s1, String s2 )
        {
            int x = Integer.parseInt( s1 );
            int y = Integer.parseInt( s2 );
      
            int ergebnis = x * y;
        return ergebnis; // ohne dies wird nicht zurückgegeben
        }
     
    // ##################### warum nicht gleich :
    //    public static void main(String[] args) 
    //    {
    //        int x = Integer.parseInt( args[0] );
    //        int y = Integer.parseInt( args[1] );
    //    }
    }

    Und nochmal: was genau willst Du denn eigentlich machen ?

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  8. #8
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Zitat Zitat von vfl_freak Beitrag anzeigen
    Moin,

    Dein Code
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    
    // hier fehlen übrigens die meisten abschließenden Semikolon
    public class ZahlenSheet 
    {
        public static void main(String[] args) 
        {
        Zahlen = meineZahlen(args[0], args[1]);
        }
     
        private static int[][] meineZahlen // hier fehlt die Parameterliste !
        {
            int[][] meinArray = new int[2][2] // wieso denn zweidimensional ?
            
            meinArray[0][0] =args[0] // 'args' sind Strings, passen also so nicht 
            meinArray[1][0] =args[1] // in ein int-Array !
     
            int x = meinArray[0][0]
            int y = meinArray[1][0]
      
            int ergebnis =x*y;
        
        // return-Anweisung fehlt für die Rückgabe
        // sollen die einzelnen Zahlen oder deren Produkt zurückgegeben werden ?
        }
    }

    Schau mal hier :
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    public class ZahlenSheet 
    {
        public static void main(String[] args) 
        {
        int iZahl = meineZahlen(args[0], args[1]);
        }
     
        private static int meineZahlen( String s1, String s2 )
        {
            int x = Integer.parseInt( s1 );
            int y = Integer.parseInt( s2 );
      
            int ergebnis = x * y;
        return ergebnis; // ohne dies wird nicht zurückgegeben
        }
     
    // ##################### warum nicht gleich :
    //    public static void main(String[] args) 
    //    {
    //        int x = Integer.parseInt( args[0] );
    //        int y = Integer.parseInt( args[1] );
    //    }
    }

    Und nochmal: was genau willst Du denn eigentlich machen ?

    Gruß
    Klaus
    Ich will nichts bestimmtes machen, ich will doch nur wissen wie ich mit dem String in der 2. Methode arbeiten kann.


    Methode 1 ist gegeben. Da soll nichts geändert werden. Und ich will einfach nur beispielsweise die Strings in Methode 2 ausgeben können oder damit rechnen oder sonst was.
    Ich will, dass die beiden Strings egal wie in der Methode 2 sind.

    Aber wie krieg ich die da hin?
     

  9. #9
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    353
    Alle deine Fragen wurden doch jetzt bereits beantwortet, sogar noch mit Code! Was ist denn jetzt noch das Problem?
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  10. #10
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Zitat Zitat von blackpage Beitrag anzeigen
    Ich will nichts bestimmtes machen, ich will doch nur wissen wie ich mit dem String in der 2. Methode arbeiten kann.
    Methode 1 ist gegeben. Da soll nichts geändert werden. Und ich will einfach nur beispielsweise die Strings in Methode 2 ausgeben können oder damit rechnen oder sonst was.
    Ich will, dass die beiden Strings egal wie in der Methode 2 sind.
    Aber wie krieg ich die da hin?
    Auch auf die Gefahr, mich zu wiederholen .... indem Du sie an die Methode übergibst (so wie oben schon mehrfach beschrieben) !!

    Wenn du also offensichtlich 2 Strings an die Funktion übergeben willst, dann musst du das auch so angeben:
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    
    private static int[][] meineZahlen(String str1, String str2) 
     
     
     
     
    {
    // ...
    }
    Deine Methode1 ist dafür VÖLLIG unerheblich ! ! !

    Gruß
    Klaus

    EDIT: zu spät
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  11. #11
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Zitat Zitat von Muepe32 Beitrag anzeigen
    Hallo blackpage,

    Deine Definition von meineZahlen hat keinen gültigen Funktionskopf. Ein Funktionskopf sieht folgendermassen aus:
    Code java:
    1
    
    modifizierer rückgabetype name(parameter)

    Wenn du also offensichtlich 2 Strings an die Funktion übergeben willst, dann musst du das auch so angeben:
    Code java:
    1
    2
    3
    
    private static int[][] meineZahlen(String str1, String str2) {
       // ...
    }

    Ich würde dir vorschlagen dass du dir mal ein (e)Buch zulegst mit den nötigen Grundlagen. Hier zum Beispiel findest du bereits alles wichtige:
    http://openbook.galileocomputing.de/javainsel/

    Gruss
    Muepe

    das stimmt natürlich alles. Danke. Das Buch hab ich. Aber ich komme damit absolut nicht klar. Ich lese da was verstehe es aber meistens nicht und suche dann 3 stunden um einen kleinen Sachverhalt zu verstehen.
     

  12. #12
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    Zitat Zitat von blackpage Beitrag anzeigen
    das stimmt natürlich alles. Danke. Das Buch hab ich. Aber ich komme damit absolut nicht klar.
    Ich lese da was, verstehe es aber meistens nicht und suche dann 3 stunden um einen kleinen Sachverhalt zu verstehen
    Ganz ehrlich? (und bitte nicht übel nehmen)

    Wenn das wirklich so ist, dass Du bei den einfachen Grundlagen schon solche Schwierigkeiten hast, dann solltest Dir ernsthaft überlegen, ob Programmieren das Richtige für Dich ist. Ob das o. g. "Insel"-Buch für einen Anfänger das Richtige ist, bezweifel ich allerdings - es ist mehr eine Referenz für Fortgeschrittene !

    Besorge Dir ein ganz einfaches Grundlagenbuch und arbeite dies von Anfang an Schritt für Schritt durch - und mach dabei erst mit dem nächsten Kapitel weiter, wenn Du sicher bist, das vorherige verstanden zu haben ....
    Sonst wirst Du immer Schwierigkeiten bekommen, da die Grundlagen nun mal das notwendige Rüstzeug sind !

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  13. #13
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Zitat Zitat von vfl_freak Beitrag anzeigen
    Auch auf die Gefahr, mich zu wiederholen .... indem Du sie an die Methode übergibst (so wie oben schon mehrfach beschrieben) !!



    Deine Methode1 ist dafür VÖLLIG unerheblich ! ! !

    Gruß
    Klaus

    EDIT: zu spät


    Es reicht aber doch nicht, wenn ich die Zeile einfach reinschreibe.

    Kannst du das vielleicht mal an meinem Beispiel oben machen? Kannst auch das array weglassen, dass weiß ich ja eh wies funktioniert.

    Wär echt lieb. Ich blick echt nicht durch grad.
     

  14. #14
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Nein, das steht doch oben schon alles .....
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  15. #15
    blackpage blackpage ist offline Mitglied
    Registriert seit
    May 2011
    Beiträge
    13
    Ich erabreite mir gerade die Grundlagen unjd das ist eine Grundlage die ich nicht verstehe, weil cih niemanden hab der sie mir erklärt und auch nirgendwo das finde was ich brauche.

    Ich muss da jetzt durch, ob es mir liegt ode rnicht und ich geb alles dafür und strenge mich an. Und lese den ganzen Tag. Und ich habe auch Grundlagenbücher und die arbeite ich auch durch.

    Aber ich will doch jetzt einfach nur wissen wie ich ein

    args[0] von der ersten Methode in die 2. Methode bekomme.
     

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 21.07.08, 18:35
  2. Antworten: 2
    Letzter Beitrag: 25.08.07, 19:47
  3. Antworten: 2
    Letzter Beitrag: 06.06.07, 18:37
  4. Antworten: 9
    Letzter Beitrag: 10.10.06, 19:15
  5. Antworten: 5
    Letzter Beitrag: 18.10.04, 20:59