我想创建一个50%
有机会返回字符串"h"
的代码,其他50%会返回"t"
。我知道有一种在Java中生成随机字符串的方法,但是如何将其限制在只能从中获取'h'
和't'
的位置?
这是一个简单的头尾游戏。用户输入h(head)或t(tails),代码生成随机答案。
答案 0 :(得分:4)
你的意思是:
char[] sequence = {'t', 'h'};
Random random = new Random();
char result = sequence[random.nextInt(sequence.length)];
答案 1 :(得分:2)
我会使用本地随机线程。
import java.util.concurrent.ThreadLocalRandom;
String ht = "ht"; // reused string
Random random = ThreadLocalRandom.current(); // reused Random
char flip = ht.charAt(random.nextInt(ht.length()));
我不会做的是
char[] sequence = {'t', 'h'}; // creates a new array each time
Random random = new Random(); // creates a new Random object each time
char result = sequence[random.nextInt(sequence.length)];
我唯一能找到的是导入java.util.Random,但这似乎并不适用于这种情况
你真的应该能够导入这个类。如果没有,你有一个破坏的IDE配置,一个减少的微JDK,或你的import
格式不正确。
如果不阅读错误信息,就无法说出来。