gpt4 book ai didi

java - 数组与变量方法调用相比

转载 作者:行者123 更新时间:2023-12-01 20:51:56 25 4
gpt4 key购买 nike

这里是初学者程序员,我目前编写了一个程序,它接受一个数组和一个变量并对两者进行比较,如果声明的变量在数组内,则该数组将打印出数组中除了包含的数字之外的所有数字在变量中。这是正常工作和运行的。此外,我现在想做的是将我编写的代码放入一个功能方法中以供重用,但我目前有点坚持这样做。最终结果将是显示一个新的较小数组,其中不再包含数字 17。这是我的代码示例。

public class arrayTest
{
public static void main(String [] args)
{
int[]arrayA = {2,4,8,19,32,17,17,18,25,17};

int varB = 17;

for(int B = 0; B < arrayA.length; B++)
{
if(arrayA[B] != varB)
{
System.out.print(arrayA[B] + " ");
}

}
}

public static int newSmallerArray( int[] A, int b )
{

}
}

最佳答案

好的,到此为止

  int[]arrayA = {2,4,8,19,32,17,17,18,25,17};
int varB = 17;

你可以打电话

 newSmallerArray(arrayA, varB);

然后,在这个方法中,您将拥有相同的循环代码,但变量名称已更改

  for(int B = 0; B < A.length; B++)
{
if(A[B] != b)
{
System.out.print(A[B] + " ");
}
}

现在的问题是,你已经声明这个方法返回一个 int 但没有什么可返回的,所以也许让它返回 void

public static void newSmallerArray( int[] A, int b )

接下来,我还将坚持 java 命名约定

返回输入数组的子集的完整代码示例

使用更好的名称

public static void main(String[] args) throws SocketException {

int[]arrayA = {2,4,8,19,32,17,17,18,25,17};
int varB = 17;

int [] na = newSmallerArray(arrayA, varB);
// test
System.out.println();
for(int b = 0; na != null && b < na.length; b++)
{
System.out.print(na[b] + " ");
}
}

private static int[] newSmallerArray(int[] a, int b) {

int count = 0;
for(int x = 0; x < a.length; x++)
{
if(a[x] != b)
{
System.out.print(a[x] + " ");
count++;
}
}

if (count > 0) {
int[] newArray = new int [count];
count = 0;
for(int x = 0; x < a.length; x++)
{
if(a[x] != b)
{
newArray[count++] = a[x];
}
}

return newArray;
}

return null;

}

关于java - 数组与变量方法调用相比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43219941/

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