Das folgende Programm speichert je 20 Zufallszahlen in einer Datenstruktur (int[]-Array, ArrayList und HashMap) und gibt Minimum, Maximum und Summe aus. Wie kann ich es nun am einfachsten so ändern, dass in jeder Datenstruktur dieselben Zufallszahlen stehen. (Ich weiß, dass kann nicht schwer sein, aber ich bin eben noch Noob.)
Java:
import java.util.ArrayList;
import java.util.HashMap;
public class Zufallszahlen {
public static void main(String[] args) {
HashMap<String, Integer> list =new HashMap<String, Integer>(20);
for (int i=0; i<20; i++){
list.put(i+"-te", new Integer((int)(Math.random()*1000)));
}
Integer Summe2=0;
for (int i=0; i<20; i++){
Summe2+=list.get (i+"-te");
}
int max2=0;
for (int i=0; i<20; i++)
{
if (list.get(i+"-te")>=max2)
max2=list.get(i+"-te");
}
int min2=1000;
for (int i=0; i<20; i++)
{
if (list.get(i+"-te")<=min2)
min2=list.get(i+"-te");
}
ArrayList <Integer> random= new ArrayList<Integer>(20);
for (int k=0; k<20; k++){
random.add(k,(int)(Math.random()*1000));
}
int Summe1=0;
for (int k=0;k<20; k++){
Summe1+=random.get(k);
}
int max1=0;
for (int i=0; i<20; i++)
{
if (random.get(i)>=max1)
max1=random.get(i);
}
int min1=1000;
for (int i=0; i<20; i++)
{
if (random.get(i)<=min1)
min1=random.get(i);
}
int [] array= new int [20];
int Summe=0;
for (int j=0; j<20; j++)
{array [j]=(int)(Math.random()*1000);
Summe+=array[j];
}
int max=0;
for (int i=0; i<20; i++)
{
if (array[i]>=max)
max=array[i];
}
int min=1000;
for (int i=0; i<20; i++)
{
if (array[i]<=min)
min=array[i];
}
for (int k=0; k<20;k++){
System.out.print(array[k]+" ");
if (k==19)
System.out.print("Summe ist"+" "+Summe+", Min ist"+" " +min+", Max ist\t"+max);
}
System.out.println();
for (int k=0; k<20;k++){
System.out.print(random.get(k)+" ");
if (k==19)
System.out.print("Summe ist"+" "+Summe1+", Min ist"+" " +min1+", Max ist\t"+max1);
}
System.out.println();
for (int k=0; k<20;k++){
System.out.print(list.get (k+"-te")+" ");
if (k==19)
System.out.print("Summe ist"+" "+Summe2+", Min ist"+" " +min2+", Max ist\t"+max2);
}
}
}