调用Random对象的nextFloat(50f)出现错误,请问原因是什么?
Random.nextFloat(50f)调用报错原因分析
- 核心原因:Java标准库的
Random类没有定义接收float参数的nextFloat()方法。原生的nextFloat()是无参方法,仅能生成0.0f(包含)至1.0f(不包含)区间内的随机浮点数。 - 代码问题:你调用
ran2.nextFloat(50f)时传入了参数,但这个方法签名不存在,编译器无法匹配到对应的方法,因此抛出编译错误。
如果需要生成0.0f到50.0f之间的随机浮点数,正确写法是:
Random ran2 = new Random(); float distance = ran2.nextFloat() * 50f;
内容的提问来源于stack exchange,提问作者aren talb
相关产品推荐
相关产品推荐

