Java ArrayUtils.toPrimitive I can';在移除之前不要进行排列

Java ArrayUtils.toPrimitive I can';在移除之前不要进行排列,java,mysql,arrays,arraylist,casting,Java,Mysql,Arrays,Arraylist,Casting,我需要使用mysql DB调用的结果作为INT数组。问题是,当我通过整数列表通过结果集检索数据,然后使用ArrayUtils.toPrimitive“时,我无法执行ArrayUtils.removeElement。 但是如果我只是创建一个数组,那么我可以删除元素 我的意思是: List<Integer> rowValues = new ArrayList<>(); String MySqlResultStr; ResultSet rs = stm

我需要使用mysql DB调用的结果作为INT数组。问题是,当我通过整数列表通过结果集检索数据,然后使用ArrayUtils.toPrimitive“时,我无法执行ArrayUtils.removeElement。 但是如果我只是创建一个数组,那么我可以删除元素

我的意思是:

       List<Integer> rowValues = new ArrayList<>();
String MySqlResultStr;
      ResultSet rs = stmt.executeQuery(sql);
      while (rs.next()) {
          int gematria = rs.getInt("gematria");
          rowValues.add(rs.getInt(1));
       }
int[] GematriaIntArray = ArrayUtils.toPrimitive(rowValues.toArray(new Integer[0]));
System.out.println("Contents Pre: " + GematriaIntArray.length);
GematriaIntArray = ArrayUtils.removeElement(GematriaIntArray, 1);
System.out.println("Contents Pst: " + GematriaIntArray.length);
int GematriaIntArraySize = GematriaIntArray.length;
int GematriaIntTempArraySize = GematriaIntArray.length;;
int GematriaSum = 0;
int PerekIndent = 0;
for (int i = 1; i < (GematriaIntArraySize +1); i++)
{
    for (int j = 0; j < GematriaIntTempArraySize; j++)
    {
        GematriaSum = GematriaSum + GematriaIntArray[j];
        System.out.println(GematriaSum + "," + (i+PerekIndent) + "," + (i+j+PerekIndent));
    }
    GematriaSum = 0;
//--The line below does not work!        
GematriaIntArray = ArrayUtils.removeElement(GematriaIntArray, i);
    GematriaIntTempArraySize = GematriaIntArray.length;
}

您正在从数组中索引。假设您得到一个包含单个元素的数组(我将使用小写变量名):


我没有检查代码做了什么,只检查了有问题的部分,尽管那里可能还有其他问题。

通常,如果您知道什么不起作用,它会有所帮助。
int[] GematriaIntArray = {1,2,3,4,5};
        System.out.println("Contents Pre: " + GematriaIntArray.length);
        GematriaIntArray = ArrayUtils.removeElement(GematriaIntArray, 1);
        System.out.println("Contents Pst: " + GematriaIntArray.length);
for (int i = 1; i < (gematriaIntArraySize +1); i++)
{
    //omitted some code
    //--The line below does not work!        
    gematriaIntArray = ArrayUtils.removeElement(gematriaIntArray, i);
}
for (int i = 1; i < (gematriaIntArray.length +1); i++)
{
    for (int j = 0; j < gematriaIntTempArraySize; j++)
    {
        gematriaSum = gematriaSum + gematriaIntArray[j];
        System.out.println(gematriaSum + "," + (i+perekIndent) + "," + (i+j+perekIndent));
    }
    gematriaSum = 0;
    gematriaIntArray = ArrayUtils.removeElement(gematriaIntArray, i - 1);
    gematriaIntTempArraySize = gematriaIntArray.length;
}