/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Math.random() HUR ?
Fra : Sussi Svensson


Dato : 17-02-03 20:45

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.
}
}



 
 
soren davidsen (17-02-2003)
Kommentar
Fra : soren davidsen


Dato : 17-02-03 21:28

"Sussi Svensson" <042.187716@telia.com> writes:

> 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.

brug java.util.Random istedet.

Random rand = new Random();
for (int i = 0; i < maxAntal; i++)
buffert[i] = rand.nextInt();

... se ogsaa java.security.SecureRandom.


mvh,

--

school:soren.davidsenATturtle.math.klte.hu//math-institute/uni-debrecen
other:sorenATtanesha.net//www.tanesha.net

Mikkel Bundgaard (17-02-2003)
Kommentar
Fra : Mikkel Bundgaard


Dato : 17-02-03 21:30

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

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste