I am writing a small java code to generate random values:

    import java.util.Random;
    public class Rann {
       static Random rand;
       public static void main(String args[]){
           int i;
           for(i=0;i<15;i++)
               System.out.println(rand.nextInt(7));
       }
    }

This gives an error:

Exception in thread "main" java.lang.NullPointerException
at Rann.main(Rann.java:7)

Any help would be highly appreciated. And is this the preferred way to generate random values in LeJOS?

有帮助吗?

解决方案

you haven't initialized your random object

static Random rand = new Random(System.currentTimeMillis());

For best way to generate random numbers you can take a look at How do I generate random integers within a specific range in Java?

其他提示

You need to instantiate the Random object

Random rand = new Random();

Try this. You forgot to tell it to make a new Random-Class object.

package foso;
import java.util.Random;
public class FoSo {
   static Random rand = new Random();
   public static void main(String args[]){
       int i;
       for(i=0;i<15;i++)
           System.out.println(rand.nextInt(7));
   }
}

Who will initialize your rand?

   static Random rand = new Random();

You have to initialize your randvariable before using it.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top