java将值拆分为两个随机数
我正在用Java创建一个随机图书目录,并打算将随机生成的图书包价格值拆分为两个单独的值(表示两本书的各个包)
例如,随机生成的书籍包42的价格为80美元,该包中两本书的单独价格分别为X美元和Y美元。以下是我的代码摘录:
public class MultiAgent {
int maxBookID = 50;
int maxBookPrice = 100;
int maxNumItems = 50;
void buildCatalogue() {
int numItems = rand.nextInt(maxNumItems);
while (bookCatalogue.size() < numItems) {
int ranID = rand.nextInt(maxBookID);
bookCatalogue.put(String.valueOf(ranID), rand.nextInt(maxBookPrice));
}
for (Object key : bookCatalogue.keySet()) {
System.out.println("Package ID: " + (String) key + "; price value: " + bookCatalogue.get(key)); //The individual values of the two books should print here
}
}
}
如何将生成的价格值拆分为两个随机值
# 1 楼答案
在} :
0.0
和1.0
之间生成一个random ^{用它来分割你的价值:
示例/说明
让我们假设
packagePrice
是100
,而r
最终是0.4
:但是,请注意,其中一本书最终可能不花任何钱(在
r
为0.0
的情况下)。如果您想防止这种情况发生,只需查看该问题的几个可用问题/答案中的一个,例如"Generating a random double number of a certain range in Java"