java - 除了一个特定数字之外,如何生成 0-8 范围内的随机数?

标签 java

我正在尝试开发 Tic Tac Toe 游戏,其中玩家 1 将单击一个按钮以放置“X”,稍后玩家 2(计算机)将在第一步随机将“O”放置到其他按钮。为此我需要创建一个介于 0-8 之间的随机数,玩家 1 单击的那个除外。

我正在使用下面的代码生成随机数

Random random=new Random();
int number=random.nextInt(9);

最佳答案

如果你想要从 0 到 8 的随机数并排除一个值,那么实际上有 8 个可能的值,而不是 9 个。因此生成一个从 0 到 7 的随机数 — random.nextInt(8) — 如果结果大于或等于您排除的值,则将其加 1。

关于java - 除了一个特定数字之外,如何生成 0-8 范围内的随机数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22128634/

相关文章:

java - AppEngine "Task size too large"异常

java - 根据后端请求更新用户 session

java - Hibernate session.update() 与更新查询?

java - 如何将arrayList的元素传递给可变参数函数

java - 必须声明一个命名包 eclipse,因为此编译单元与命名模块关联

java - 我在 lwjgl 中的多维数据集无法正确呈现

java - Metro 服务和 WCF 客户端之间的传输安全

java - 如何使用 Java 获取存储在 ArrayList 中的对象的属性

java - 使用 Hibernate Schema Updater 创建表时出错

java - 具有 Spring RESTController 的端点的 REST API 层次结构