Java 如何检查数组的随机部分是否等于特定的数组部分?

Java 如何检查数组的随机部分是否等于特定的数组部分?,java,arrays,random,Java,Arrays,Random,我正在尝试获取我的字符串数组,以从中获取随机字符串,如果它是某个字符串,则需要在我的文本区域中打印结果 String[] items = new String[]{"nothing useful", "trash", "a fork"}; 所述阵列: Random rand = new Random(); String outcome = items[rand.nextInt(items.length)]; 从数组中获取随机字符串作为字符串命名结果: if(outcome.equals(it

我正在尝试获取我的
字符串
数组,以从中获取随机
字符串
,如果它是某个
字符串
,则需要在我的文本区域中打印结果

String[] items = new String[]{"nothing useful", "trash", "a fork"};
所述阵列:

Random rand = new Random();
String outcome = items[rand.nextInt(items.length)];
从数组中获取随机
字符串作为
字符串
命名结果:

if(outcome.equals(items[2])){
  textArea2.append("a fork" + "\n");
}
我试图让它在文本区域中放置一个
“fork”
。 我所有的文本区域都工作,所以这不是我的问题

我尝试过使用
.equals
==
如果(结果==“一个叉子”)
,以及诸如此类的东西,但它们都不起作用

我需要它将
“一个fork”
添加到名为
textArea2

的文本区域,你确定你的
是否达到了(output.equals(items[2])
?也许代码的触发器有问题。 只需在它前面放上类似于打印的东西,以确保它真正执行:

System.out.println(“如果到达”);
if(结果等于(项目[2])){
textArea2.append(“一个fork”+“\n”);
}
据我所知,
=
.equals()
甚至
if(output==“a fork”)
在这种情况下应该可以工作。

你确定你的
if(output.equals(items[2])
已经达到了吗?也许代码的触发器有问题。 只需在它前面放上类似于打印的东西,以确保它真正执行:

System.out.println(“如果到达”);
if(结果等于(项目[2])){
textArea2.append(“一个fork”+“\n”);
}

据我所知,
=
.equals()
甚至是
if(outcome==“a fork”)
都应该在这种情况下起作用。

您发布的代码是正确的。您的bug位于未显示的代码中。发布一个完整的最小示例,再现问题。“一个叉”只有在被随机选择时才会被追加。确切的问题是什么?您是否检查了
结果的实际值
?您发布的代码是正确的。您的bug位于未显示的代码中。发布一个完整的最小示例,再现问题。“一个叉”只有在被随机选择时才会被追加。确切的问题是什么?您是否检查了
结果的实际值?