gpt4 book ai didi

java - 在java中只打印一次随机数组变量

转载 作者:行者123 更新时间:2023-12-02 00:16:13 28 4
gpt4 key购买 nike

我有一个大学作业,我必须创建一个 Java 程序来生成随机配对的客户及其交易总额。

它分为两部分,第一部分产生客户及其交易,如下所示:

Customer ID, Transaction Value
1, 74.36
1, 44.98
3, 6.44
0, 19.13
3, 59.44
2, 81.56
0, 87.21
4, 40.9
1, 42.11
3, 66.05

第二个总结了每个客户的交易总数,如下所示:

Customer: 1 Transactions: 3.0
Customer: 1 Transactions: 3.0
Customer: 3 Transactions: 3.0
Customer: 0 Transactions: 2.0
Customer: 3 Transactions: 3.0
Customer: 2 Transactions: 1.0
Customer: 0 Transactions: 2.0
Customer: 4 Transactions: 1.0
Customer: 1 Transactions: 3.0
Customer: 3 Transactions: 3.0

我的问题是第二部分应该只生成每个客户 ID 一次,即 1,3,0,2,4。我只能使用 int 和 double 变量来执行此操作,而无需创建任何其他数组或结构。我的代码可以在下面找到。

 import java.util.*;

public class Assignment3 {
public static long studentNumber=1234567;

public static int customerID[];
public static double transactionValue[];

public static void initialiseData(int size) {
customerID = new int[size];
transactionValue = new double[size];

Random rand = new Random(studentNumber);
for (int i=0; i<size; i++) {
customerID[i] = rand.nextInt(size / 2);
transactionValue[i] = rand.nextInt(10000) / 100.0;
}
}

public static void main(String args[]) {
int size=10;

initialiseData(size);

// Your code should only be below this line
double transaction = 0;
int customer = 0;
int customer_Total = 0;
int count = 0;
int customer_count = 0;
double transaction_Total = 0;

System.out.println("Customer ID, Transaction Value");

for (size= 0; size < customerID.length; size++) {
customer= customerID[size];
transaction= transactionValue[size];
System.out.println(customer + ", " + transaction);

}

System.out.println("");

for(customer_count = 0; customer_count < customerID.length; customer_count++) {
transaction_Total= 0;
customer_Total = customerID[customer_count];
count = customerID[customer_count];
//System.out.println(count);

for (int customer_count2 = 0;
customer_count2 < customerID.length;
customer_count2++) {
if (customer_Total == customerID[customer_count2]) {
transaction_Total++;

//System.out.println(customer_count2);
}
}

System.out.println("Customer: "+ customer_Total + " " +
"Transactions: " + transaction_Total);
}

// Your code should not be below this line

}
}

最佳答案

我建议你看看如何Collections.shuffle作品。在您的情况下,您可以创建一个包含所有可能值的数组,然后以随机顺序“洗牌”。

关于java - 在java中只打印一次随机数组变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11859946/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com