Ein Array an die Methode zurückgeben

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;
 
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]
 
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.
 
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));
 
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]);
    }
}
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben