【发布时间】:2017-04-06 03:10:58
【问题描述】:
我的 java 程序有问题。我是 Java 的新手,只是无法弄清楚它到底有什么问题。简而言之,我已经在 main 中声明了一个数组和一个变量,我已经创建了我的方法调用,并且希望我的数组通过变量传递到我的方法中。然后我希望该方法获取我的数组并计算变量“8”出现的次数,从数组中删除 8 并将一个新的较小数组返回给 main。下面是我的代码。我觉得好像我只是缺少一个代码块有什么建议吗?
public class Harrison7b
{
public static void main(String [] args)
{
int[] arrayA = {2,4,8,19,32,17,17,18,25,17,8,3,4,8};
int varB = 8;
// Call with the array and variable you need to find.
int[] result = newSmallerArray(arrayA, varB);
for(int x = 0; x < arrayA.length; x++)
{
System.out.print(arrayA[x] + " ");
}
}
public static int[] newSmallerArray( int[] arrayA, int varB)
{
int count = 0;
for(int x = 0; x < arrayA.length; x++)
{
if(arrayA[x] == varB)
{
count++;
}
}
int [] arrayX = new int[arrayA.length - count];
for(int B = 0; B < arrayA.length; B++)
{
if(arrayA[B] != varB)
{
}
}
return arrayX;
}
}
【问题讨论】:
-
你有什么问题?
-
为什么我的代码不返回没有 8 的新数组
-
所以您想删除阵列中的
8? -
Arraylist 是您问题的最佳解决方案 Arraylist 变量能够调整其 Array 对象的大小,只需将您的 int 转换为 Integer 类
-
是的,将数组向下传递给我的方法,然后我想在方法中向下计算,删除 8 并将其发送回 main。
标签: java arrays for-loop if-statement methods