我希望这些对象在main中声明的所有对象中仅在数组中打印一次随机名称。我的问题是,它将显示两次或更多次的名称。
public class Fighters {
private static String[] names = { "Terminator", "Slicer","Ninja", "cow", "Robot", "littlegirl" };
private static int id = 0;
public Fighters(){
id++;
name = names[(int) (Math.random() * names.length)];
}
public String toString(){
return String.format(id+" Name:%-5s, name);
}
}
在main()
我有这些对象
Fighters a1 = new Fighters();
System.out.println(a1.toString());
Fighters a2 = new Fighters();
System.out.println(a2.toString());
Fighters a3 = new Fighters();
System.out.println(a3.toString());
如果要将名称分配保留在Fighter类中,请使用静态变量来保存使用过的名称列表。您需要确保您创建的战斗机没有超过名称数组。否则,它将无限期地循环。我将由您自己决定这一部分。这至少应该使您走上正确的道路。
import java.util.ArrayList;
public class Fighter {
private String name;
private static String[] names = { "Terminator", "Slicer","Ninja",
"cow", "Robot", "littlegirl" };
private static int id = 0;
private static ArrayList<String> usedNames = new ArrayList<String>();
public void Fighters(){
id++;
String checkedName = "";
do{
checkedName = names[(int) (Math.random() * names.length)];
if(!usedNames.contains(checkedName)) break;
}
while(true);
name = checkedName;
usedNames.add(name);
}
public String toString(){
return String.format(id+" Name:%-5s, name");
}
}
问题内容: 假设我有一个数组,我想随机选择一个元素。 最简单的方法是什么? 明显的方法是。但是也许有红宝石之类的东西?或者如果不能通过扩展创建这种方法? 问题答案: Swift 4.2及更高版本 推荐的新方法是Collection协议的内置方法:。它返回一个可选参数以避免我以前假设的空情况。 如果不创建数组并且不能保证count> 0,则应执行以下操作: Swift 4.1及以下 只是为了回答您的
假设我有一个数组,我想随机选择一个元素。 最简单的方法是什么? 最明显的方法是数组[随机索引]。但可能有类似ruby的数组。示例 ?或者,如果不是,那么可以使用扩展创建这样的方法吗?
问题内容: 我正在寻找从整数数组中随机选择数字的解决方案。 例如我有一个数组,如何随机选择一个数字? 问题答案:
例如:数组中有四个项目。我想随机获取一个,如下所示:
我被分配了一项编程任务,但我被卡住了。其说明如下: 有一个名为“秘密圣诞老人”(给他们礼物)的游戏,有很多孩子参加。对于每个参与的孩子,都有一个来自参与孩子的秘密圣诞朋友。我必须编写一个程序,为每个参与的孩子挑选一个秘密的圣诞老人朋友。 示例:如果Bob,Alice,John和George是参与的孩子,在随机选择之后, 输出可能看起来像 具有相同输入的连续两次程序运行不应有相同的结果。 我的想法是
问题内容: 我有一个数字值数组,我想从该数组中随机选择一个值,然后将其插入变量中。 我不确定您需要查看什么代码。所以, 这是我用来生成13个数字(1-13)并将其插入到数组中的循环。 效果很好,但是现在我需要从该数组中选择2个随机值(然后将其插入变量中,以备后用。 我到过很多网站,已经看到了类似的事情,例如将值插入到数组中,然后用于从数组中选择值,然后从数组中删除它。但是,无论何时我使用它都行不通