关于math:如何在Java中生成随机点(x,y)

How to generate Random point(x,y) in Java

我想在爪哇中生成一个随机点(x,y),它应该位于2D平面{(1,1)(1,1)(-1,1)(- 1,-1)}中,其中考虑正负x轴和y轴。谢谢。


请看一篇文章https://www.tutorialspoint.com/java/util/java_util_random.htm。您需要做的就是在范围内生成浮点对(-1,1)。应该使用Random类的NextFloat()方法。它将为您提供范围(0,1)内的数字。然后乘以2再减去1,您将得到所需间隔内的数字。


使用下面的方法返回随机点

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public String randXYPoint(){
    //For x and y, the maximum point is 1 and Minimum point is -1
    //maximum number
    int min = -1;
    //minimum number
    int max = 1;

    // generates x values
    double xValue = min + Math.random() * (max - min);
    // generates y values
    double yValue = min + Math.random() * (max - min);
    //returns and converts points to string
    return  String.valueOf(xValue)+","+ String.valueOf(yValue);
}

只需调用方法

1
System.out.println(randrandXYPoint())


请使用SecureRandom请参阅:StackOverflow