On Mon, 17 Feb 2003 19:45:07 +0000, Sussi Svensson wrote:
> Jag har skapat en liten klass med en array (buffert)
> En dialogruta (inputData1) poppar upp och man får fylla i hur stor arrayn
> ska vara. Detta sparas i variabeln maxAntal.
>
> Nu vill jag fylla denna array med slumpmässiga integer-tal. Men jag förstår
> inte HUR jag ska använda mig av detta "Math.random()".
>
> Här är lite kod:
> ===========
>
> import java.lang.*;
>
> public class Sortera{
> public static void main(String[] arguments){
>
> String indata1 = JOptionPane.showInputDialog("Hur stor ska arrayn vara?
> ");
> int maxAntal = Integer.parseInt(indata1.trim());
>
> int [] buffert = new int [maxAntal];
>
> buffert = (Math.random()==maxAntal); //detta fungerar ej.
> }
> }
For det første du kan ikke bruge Math.random(), da den returnerer en
double og ikke en int. Brug klassen java.util.Random (og metoderne ) i
stedet for. Se i API'en
http://java.sun.com/j2se/1.3/docs/api/java/util/Random.html
For det andet prøver du at tildele en boolean til dit int array. Det vil
aldrig komme til at virke
. Du skal i stedet for tildele de tilfældige
tal til de enkelte indgange i arrayet.
Hvis jeg har forstået dit problem rigtigt, så burde du skrive noget a la
dette.
import javax.swing.JOptionPane;
import java.util.Random;
public class Sortera{
public static void main( String[] arguments ){
String indata1 = JOptionPane.showInputDialog( "Hvor stort?" );
int maxAntal = Integer.parseInt( indata1.trim() );
int [] buffert = new int [ maxAntal ];
Random rnd = new Random();
for ( int i = 0; i < buffert.length; i++ )
buffert[i] = rnd.nextInt();
// Udskriv indhold af buffert
for ( int i = 0; i < buffert.length; i++ )
System.out.println( i + " : " + buffert[i] );
System.exit( 0 );
}
}
Håber du kan bruge det til noget
--
Mikkel Bundgaard
Student at IT University of Copenhagen
Codito, Ergo Sum