Ein Array an die Methode zurückgeben

Diskutiere Ein Array an die Methode zurückgeben im Java Basics - Anfänger-Themen Bereich.
B

Beginner2510

Hallo und zwar, möchte ich das ganze Array an die Mehtode zurückgeben, nur das klappt nicht.

Java:
static int[] calculateDividers(int eingeleseneZahl) {}
        
        
        int[] alleTeiler = new int[eingeleseneZahl + 1];
        
        
        
        for (int i = 1;i < eingeleseneZahl + 1; i++) {
            
            if (eingeleseneZahl % i == 0) {
                
                alleTeiler[i] = i;
                        
                
                
            
                
                
            }
        }
        
        return alleTeiler;
 
B

Beginner2510

Java:
public class DividersArrayResult {
    // Ausgabe main Methode nicht korrekt
    public static void main(String[] args) {
        println("Geben Sie eine ganze Zahl ein!");
        
        int eingeleseneZahl = readInt();

        println(calculateDividers(eingeleseneZahl));

    }


    static int[] calculateDividers(int eingeleseneZahl) {

        
        
        int[] alleTeiler = new int[eingeleseneZahl + 1];
        
        
        
        for (int i = 1;i < eingeleseneZahl + 1; i++) {
            
            if (eingeleseneZahl % i == 0) {
                
                alleTeiler[i] = i;                                     
                
            }}
        
        
        return alleTeiler;
        
    


    }
    
}


Funktioniert immer noch nicht.

In der Console steht: [[email protected]
 
mihe7

mihe7

Das ist auch vollkommen richtig.

Wenn Du die Werte des Arrays ausgegeben haben willst, musst Du das auch tun. Dazu kannst Du entweder java.util.Arrays.toString() verwenden oder tatsächlich alle Werte einzeln ausgeben.
 
B

Beginner2510

Das steht in meiner Aufgabenstellung.
Nach dem alle Teiler in das Array geschrieben wurden, liefert calculateDividers das Array als Ergebnis an main zurück.
Also muss ich doch das ganze Integer Array zurück geben können?
 
mihe7

mihe7

Deine Methode calculateDividers gibt das ganze Array zurück. Das Problem ist lediglich die Ausgabe:
Java:
int[] dividers = calculateDividers(eingegebeneZahl);
System.out.println(java.util.Arrays.toString(dividers));
 
B

Beginner2510

Danke, das klappt schon mal ganz gut, nur dürfen wir die Methode nicht benutzen.

Gibt es noch eine andere möglichkeit?
 
mihe7

mihe7

Für die Ausgabe? Du brauchst ja nur in einer Schleife durch all Deine Teiler zu gehen und diese auszugeben, sofern diese nicht 0 sind:
Java:
for (int i = 0; i < dividers.length; i++) {
    if (dividers[i] != 0) {
        System.out.println(dividers[i]);
    }
}
 
Thema: 

Ein Array an die Methode zurückgeben

Passende Stellenanzeigen aus deiner Region:
Anzeige

Anzeige

Anzeige
Oben