gpt4 book ai didi

java - 我如何在java中将数字放在一起?

转载 作者:行者123 更新时间:2023-11-29 09:36:59 24 4
gpt4 key购买 nike

出于某种原因,当我运行以下代码时,程序总是打印出“JDN4”或“JDN16”,而我希望它始终打印“JDN”,后跟三个 0-9 之间的数字;例如,“JDN123”或“JDN045”或“JDN206”。代码有什么问题?

import java.util.*;

public class Document2 {
public static void main(String[] args) {
String initials = "JDN";
int randomNumbers;
Random generator = new Random();
int randomNumber1 = generator.nextInt(9);
int randomNumber2 = generator.nextInt(9);
int randomNumber3 = generator.nextInt(9);
randomNumbers = randomNumber1 + randomNumber2 + randomNumber3;
String userName = initials + randomNumbers;
System.out.println("Your username is " + userName + ".");
}
}

最佳答案

您的问题是 randomNumbers 被声明为 int,因此当您在其他 int 上使用 + 时,它将对整数求和而不是连接它们。

因此,如果我们要使用您的方法,我们需要一个字符串:

String userName = initials + randomNumber1 + randomNumber2 + randomNumber3;

但是生成一个 0-999 的数字并用零填充它会容易得多:

int randomNumber = generator.nextInt(1000);
String usernName = initials + String.format("%03d", randomNumber);

还有一点值得注意 Random.nextInt(n) 生成一个介于 0(含)和 n 之间的随机数(独占),因此如果您想要 0 到 9 之间的数字,您可能应该这样做 .nextInt(10)

关于java - 我如何在java中将数字放在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7618772/

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