gpt4 book ai didi

java - 我的方法为返回数组中的每个值返回相同的值

转载 作者:行者123 更新时间:2023-12-01 13:54:41 25 4
gpt4 key购买 nike

所以..在我的程序中,我构建了一个方法,该方法从数组中获取两个值并将它们相乘,然后必须将值保存到数组中。然后我再次执行此操作,但不保存第二个值在下一个数组位置中,它似乎将其保存在每个位置。我认为该方法中的循环确实是错误的。我希望每个计算值都保存在数组中(至少这是重点),最后到打印出来?现在程序打印出以下内容:

420042004200420042004200

任何帮助将不胜感激。我是 Java 新手。

public class TestingN
{
public static void main(String[] args)
{
int [] initialMarks = new int [4];
int [] result = new int [2];
initialMarks[0] = 40;
initialMarks[1] = 60;
initialMarks[2] = 60;
initialMarks[3] = 70;
result = computedMarks(initialMarks[0], initialMarks[1]);
result = computedMarks(initialMarks[2], initialMarks[3]);
for(int i=0; i< result.length; i++)
System.out.println(result[i]);
}
public static int [] computedMarks(int mark1, int mark2)
{
int [] i= new int [6];
for (int j = 0; j < i.length; j++)
{
if ((mark1 < 35 && mark2 > 35) || (mark1 > 35 && mark2 < 35))
{
i[j] = 35;
}
else
{
i[j] = (mark1 * mark2);
}
}
return i;
}
}

最佳答案

试试这个,应该可以。您不需要在方法 ComputedMarks 上有一个数组

 public static void main(String[] args) 
{
int [] initialMarks = new int [4];
int [] result = new int [2];
initialMarks[0] = 40;
initialMarks[1] = 60;
initialMarks[2] = 60;
initialMarks[3] = 70;
result[0] = computedMarks(initialMarks[0], initialMarks[1]);
result[1] = computedMarks(initialMarks[2], initialMarks[3]);
for(int i=0; i< result.length; i++){
System.out.println(result[i]);
}

} public static int computedMarks(int mark1, int mark2)
{
int i = 0;
{
if ((mark1 < 35 && mark2 > 35) || (mark1 > 35 && mark2 < 35))
{
i = 35;
}
else
{
i = (mark1 * mark2);
}
}
return i;
}

关于java - 我的方法为返回数组中的每个值返回相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19681723/

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