Wie kann ich ein int[] Array in einer Methode benutzen?

Diskutiere Wie kann ich ein int[] Array in einer Methode benutzen? im Allgemeine Java-Themen Forum; Hallo Freunde, ich muss eine bestimmte Aufgabe erledigen. Ich muss ein int[] Array erstellen, dessen Größe durch einen Konstruktor bestimmt werden...

  1. ml528
    ml528 Neues Mitglied
    Hallo Freunde,
    ich muss eine bestimmte Aufgabe erledigen. Ich muss ein int[] Array erstellen, dessen Größe durch einen Konstruktor bestimmt werden soll. Anschließend sollen die einzelnen Arraywerte durch Setter bestimmt werden und zuletzt der Mittelwert des Arrays berechnet werden. Mein Problem ist folgender: Wenn ich ein Objekt erstelle und auf die Methode zugreifen will, bekomme ich folgende Fehlermeldung:The method berechneMittelwert(int[]) in the type Mittelwert is not applicable for the arguments (Mittelwert)
    Code (Text):
    import java.lang.reflect.Array;

    public class Mittelwert {
      int[] werten;
    public Mittelwert(int wertes) {
         this.werten= new int[wertes];
       
         }
    public static void main(String[] args) {
         Mittelwert werte=new Mittelwert(3);
         werte.setarray(4,6,10);
         System.out.println(werte.berechneMittelwert(werte)); // Hier ist der Fehler bzw. die      Fehlermeldung, die ich oben beschrieben habe
         System.out.println(werte.getarray(werte)); // Hier die gleiche Meldung

           
       
    }
    public void setarray(int z, int x,int y) { //Arraywerte bestimmen
         werten[0]=z;
         werten[1]=x;
         werten[2]=y;
       
       
    }
    public int getarray(int[] herte) { //Arraywert an Stelle 0 bekommen
        return herte[0];
       
    }
    public void berechneMittelwert(int[] neu) {
        float Mw=0;
        int Summe=0;
        for(int i = 0; i<=neu.length;i++) {
        Summe+= neu[i];
        Mw= (float)Summe/neu.length;
        System.out.println(Mw);
       
       
       
        }
       
       
    }
    }
     
     
  2. Wenn du jetzt Java lernen möchtest, dann sichere dir hier unseren Java-Videokurs heute zum Sonderpreis (hier klicken!)
  3. httpdigest
    httpdigest Bekanntes Mitglied
    Du erhältst die Fehlermeldung, weil du den Methodenaufrufen als aktuelles Argument für den Parameter des Typs `int[]` eben keinen Wert vom Typ `int[]` gibst, sondern eine Instanz vom Typ `Mittelwert` und ein `Mittelwert` ist nun mal kein `int[]`. Ein `Mittelwert` hat als Attribut/Feld ein `int[]`.

    Entferne einfach den Parameter und das Argument beim Aufruf der Methoden, da du die Methoden ja sowieso als Instanzmethoden auf einem `Mittelwert` aufrufst. Somit kennen die Methoden bereits den Mittelwert (als `this`) und du kannst einfach auf das Attribut/Feld zugreifen.
     
  4. temi
    temi Aktives Mitglied
    Was machst du denn, wenn du ein Array mit einer Größe von 42000 erstellen und den 41688. Wert setzen sollst?

    Du solltest über die Parameter der Methode "setArray()" noch einmal nachdenken.

    Die Methode "getArray()" ist übrigens relativ sinnlos. Hier gilt das gleiche wie von @httpdigest oben erwähnt: Du solltest hier auch auf die Werte in der Instanzvariablen zugreifen.
     
  5. mihe7
    mihe7 Bekanntes Mitglied
    Dein Konstruktor passt, wobei die Bezeichnung der Variablen äußerst irreführend ist.

    D. h. Du brauchst eine Methode der Art:
    Code (Java):

    public void set(int pos, int value) {
        // ...
    }
     
    Hier sähe die Methode dann so aus:
    Code (Java):

    public float berechneMittelwert() {
        // ...
        // return ...;
    }
     
     
  6. ml528
    ml528 Neues Mitglied
    danke leute ihr seid die besten :D
     
  7. kadammanali987
    kadammanali987 Neues Mitglied
    Sample Program
    Code (Java):
    import java.util. *;

    class atg {
      void a () {
       int b [] = {1,2,3,4,5,6,7};
       c (b);
      }

      void c (int b []) {
       int e = b.length;
       for (int f = 0; f <e; f ++) {
         System.out.print (b [f] + ""); // Single Space
       }
      }

      public static void main (String args []) {
       atg ob = new atg ();
       ob.a ();
      }
    }
    Code (Text):
    Output: 1 2 3 4 5 6 7
     
    Zuletzt von einem Moderator bearbeitet: 8. Jan. 2019
  8. Flown
    Flown Administrator Mitarbeiter
    Wenn man Code postet, dann bitte code-tags verwenden: [code=java]//JAVA CODE HERE[/code]
     
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Wie kann ich ein int[] Array in einer Methode benutzen? - Ähnliche Themen

Methode kann auf ArrayListe nicht zugreifen!
Methode kann auf ArrayListe nicht zugreifen! im Forum Java Basics - Anfänger-Themen
Was zeichnet einen erfahrenen Softwareentwickler aus ? Was kann man nach 6 Monaten erwarten ? ?
Was zeichnet einen erfahrenen Softwareentwickler aus ? Was kann man nach 6 Monaten erwarten ? ? im Forum Softwareentwicklung
Webhooks - was genau ist das und was kann damit JAVA
Webhooks - was genau ist das und was kann damit JAVA im Forum Java Basics - Anfänger-Themen
Wie kann man an ein JPanel eine Scrollbar anheften?
Wie kann man an ein JPanel eine Scrollbar anheften? im Forum Java Basics - Anfänger-Themen
Tableview - kann man mit Enter die Zellen wechseln
Tableview - kann man mit Enter die Zellen wechseln im Forum AWT, Swing, JavaFX & SWT
Thema: Wie kann ich ein int[] Array in einer Methode benutzen?

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. wie kann ich array in einer methode nutzen