# rückgabe eines arrays von Methode



## SMoeller (3. März 2006)

Moin,
ich habe folgenden Quelltext geschrieben:

```
public class Statistik 
{
	public static void main(String[] args)
	{
		int grenze = 0;
		grenze = Konsole.readInt("Geben Sie eine Grenze ein. ");
		 
	    int[] mainArray = arrayMethode(grenze);
	    int maximum = mainArray[0];
	    int minimum = mainArray[0];
	    int zahl = 0;
	    
	    zahl = Konsole.readInt("Geben Sie eine Zahl ein, die gesucht werden soll. ");
	    
	    System.out.println("Die größte Zahl in dem Array ist  " + max(mainArray, maximum));
	    System.out.println("Die kleinste Zahl in dem Array ist " + min(mainArray, minimum));
	    System.out.println("Die Zahl " + zahl + " kommt an den Stellen " + suchen(mainArray, zahl) + " vor");
	}
	
	//Methode, die einen Array mit Zufallszahlen belegt.
	static int[] arrayMethode(int grenze)
	{
	    int[] arrayInt = new int[1000];
	    for(int i=0; i < arrayInt.length; i++)
	   {
	        arrayInt[i] = (int)(Math.random()*grenze);
	   }
	    return arrayInt; 
	}
	
	//Sucht die größte Zahl aus dem Array raus.
	static int max(int[] mainArray, int maximum)
	{
		for (int i=0; i<mainArray.length; i++)
		{
			if (mainArray[i] > maximum)
				maximum = mainArray[i];
		}
		
		return maximum;
	}
	
	//Sucht die kleinste Zahl aus dem Array raus.
	static int min(int[] mainArray, int minimum)
	{
		for (int i=0; i<mainArray.length; i++)
		{
			if (mainArray[i] < minimum)
				minimum = mainArray[i];
		}
		return minimum;
	}
	
	//soll die slots zurückgeben, in denen die eingegebene Zahl steht, klappt aber noch net.
	static int[] suchen(int[] mainArray, int zahl)
	{
		int[] gefunden = new int[1000]; 
		int a = 0;
		
		for (int i=0; i<mainArray.length; i++)
		{
			if (mainArray[i] == zahl)
			{
				gefunden[a] = i;
				a++;
			}
		}
		return gefunden;
	}
}
```

Die letzte Methode liefert mir nur Schrott wie das hier: [I@1ac04e8
Wo ist der Fehler?


----------



## Ein_Freund (5. März 2006)

> Wo ist der Fehler?


Hier:

```
...
System.out.println("Die Zahl " + zahl + " kommt an den Stellen " + suchen(mainArray, zahl) + " vor");
...
```
Die Methode suchen() gibt ein Array zurück. 
Entsprechend gibt Dir _System.out.println('irgendeinArray')_ dann halt diesen "Schrott" zurück. Aber wie Du an die einzelnen Inhalte eines Arrays kommst, weisst Du ja selbst ;-]


----------

