Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 生成随机数时的NullPointerException_Java_Random_Nullpointerexception - Fatal编程技术网

Java 生成随机数时的NullPointerException

Java 生成随机数时的NullPointerException,java,random,nullpointerexception,Java,Random,Nullpointerexception,我在第14行得到一个NullPointerException,它说: points[i].x = new Random().nextInt(30); 我的完整代码: import java.util.Random; public class RandomPoints { public class Point { public int x; public int y; } public static void main(String

我在第14行得到一个NullPointerException,它说:

points[i].x = new Random().nextInt(30);
我的完整代码:

import java.util.Random;

public class RandomPoints {
    public class Point {
         public int x;
         public int y;
    }

    public static void main(String[] args) {
        Point[] points = new Point[100];
        for(int i = 0; i < points.length; i++) {
            points[i].x = new Random().nextInt(30);
            points[i].y = new Random().nextInt(30);
            System.out.println(points[i].x + " " + points[i].y);
        }           
    }
}
import java.util.Random;
公共类随机点{
公共课点{
公共int x;
公共智力;
}
公共静态void main(字符串[]args){
点[]点=新点[100];
对于(int i=0;i
当你说
点[]点=新点[100]
它只为
100
引用分配有空间的数组(它不分配任何
实例)。您需要为索引分配一个实例,然后才能访问它,例如

Point[] points = new Point[100];
for(int i = 0; i < points.length; i++) {
    points[i] = new Point(); //<-- like so.
否则,您将在每次迭代中重新设定种子(两次)。这意味着你的数字不会很随机

Random rand = new Random();