gpt4 book ai didi

java - 我如何修改我的程序以要求我替换数组中输入的给定数字,因为它不在所需的范围内

转载 作者:行者123 更新时间:2023-12-02 01:04:52 25 4
gpt4 key购买 nike

我正在编写一个java程序,我希望用户输入10到100范围内的5个数字,如果用户输入任何小于10或大于100的数字,或者重复的数字,它应该要求我输入一个数字替换它,但我的程序只是放置一个零(0)。所以如果我放置任何重复的数字,我的程序只是将其存储在数组中为零,我希望它问我想用什么数字替换它然后存储新号码。

这是我的代码片段:

 while (wahala < thearray.length) 
{
System.out.print("Enter the number you want: ");

for (int w=0; w<5; w++)
{
value=input.nextInt();

if (value>=10 && value<=100)
{

boolean containsNumber = false;

wahala++;

for(int j=0; j<thearray.length; j++)
{
if (array[j]==value)
{
containsNumber=true;
break;
}

}

if (!containsNumber)
{

array[w]=value;
count++;
}
else
System.out.printf("%d has already been entered\n", value);
}
else
System.out.println("Number must be between 10 and 100");
}

for (int element: array)
{
System.out.println(element +"");
}
}

最佳答案

示例代码中没有任何地方提示用户输入新号码。另外,如果数组必须避免重复,请考虑使用 Set,以便您可以快速检查是否输入了重复项。

例如(Java 10):

private final int maxValues = 5;
private int input;

var intSet = new HashSet<Integer>();

while(intSet.size() < 5 && askedAndReceivedInput())
if(intSet.contains(..some input))
//ask again
else
intSet.put(someInput);

您可以随心所欲地实现输入读取功能..

另请注意,您在数组中发现了零,因为这是 java 在创建时填充的内容。这是默认值,这是由语言规范保证的。

关于java - 我如何修改我的程序以要求我替换数组中输入的给定数字,因为它不在所需的范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60197765/

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