如何在不使用java中的arraylist的情况下修剪数字数组中的前导零?

如何在不使用java中的arraylist的情况下修剪数字数组中的前导零?,java,arrays,Java,Arrays,我制作了一个表示数字的数组,我正在尝试制作一个方法,这样,如果第一个有效数字前面有零,我想修剪它们,我知道你不能重新调整数组的大小,所以我创建了一个新数组,但我的代码似乎运行不正常? 这是我的代码,我想不出哪里出了问题,我已经尝试了一切:(我在错误周围放了星星**它给出了一个边界错误的数组**) package音乐; 导入java.util.Random; /**音乐阵列 * *@作者Ryan Klotz *@版本2015年2月3日 */ 公共音乐课 { private int length;/

我制作了一个表示数字的数组,我正在尝试制作一个方法,这样,如果第一个有效数字前面有零,我想修剪它们,我知道你不能重新调整数组的大小,所以我创建了一个新数组,但我的代码似乎运行不正常? 这是我的代码,我想不出哪里出了问题,我已经尝试了一切:(我在错误周围放了星星**它给出了一个边界错误的数组**)

package音乐;
导入java.util.Random;
/**音乐阵列
*
*@作者Ryan Klotz
*@版本2015年2月3日
*/
公共音乐课
{
private int length;//数组的长度
private int numOfDigits;//数组中的实际位数
国际音乐节;
/**显式构造函数
*@param x数组的长度
*/
公共音乐(int x)
{
长度=x;
musicArray=新整数[长度];
Random rand=新的Random();
numOfDigits=rand.nextInt(长度);
int posOrNeg;//确定正负号
整数位数;

对于(int i=0;i在
for
循环中,使用
i
(您使用的是
i
如果数组中的所有值都为0,则将引发异常

while (count < x.musicArray.length && x.musicArray[count] == 0){
            count++;
}
while(count
我会帮你修好的

for (int i = 0; i <= x.numOfDigits - count; i++)

for(int i=0;i)“我的代码似乎运行不正常”是什么意思?您尝试过在调试器中调试代码吗?确保前几位不是零会更简单吗?那么您就不需要修剪前导零了吗?我怀疑您以后的代码中有一个bug,因此数组中充满了零。如果您传入一个musicArray为全零的
Music
对象,您将得到一个arrayindexoutofbounds异常。请查看Arrays.copyOfRange方法,它将使您的工作方式更简单。
for (int i = 0; i < numOfDigits; i++)
while (x.musicArray[count] == 0)
        {
            count++;
        }
while (count < x.musicArray.length && x.musicArray[count] == 0){
            count++;
}
for (int i = 0; i <= x.numOfDigits - count; i++)
for (int i = 0; i < x.numOfDigits - count; i++)