给定n个对象的数组,假设它是一个字符串数组,它具有以下值:
foo[0] = "a";
foo[1] = "cc";
foo[2] = "a";
foo[3] = "dd";
如何删除/删除数组中等于"a"的所有字符串/对象?
我有一个包含 8 个元素的数组,我需要从中删除第一个元素并将其复制到同一个数组中。我尝试使用 System.arraycopy(...) 但数组的大小没有改变。
int[] array = {90,78,67,56,45,34,32,31};
System.arraycopy(array, 1, array, 0, array.length-1);
我需要的是,数组应该由 78,67,56,45,34,32,31 个元素组成,数组大小为 7
有一种方法可以通过将其复制到另一个数组并将其分配给第一个数组来执行此操作
int arrayB = new int[array.length-1];
System.arraycopy(array, 1, arrayB, 0, array.length-1);
array = arrayB;
但这不是我想要的方式。我需要在没有另一个数组的帮助下完成它。
我有一个Generic方法smallestValueInArray(T[] array),这个方法得到一个任何类型的数组.此方法如下所示:
public class Helper {
    public static <T extends Comparable<T>> T smallestValueInArray(T[] array) {
        T smallestValue = array[0];
        T smallerTempValue = array[0];
        for (int i = 0; i < array.length - 2; i+=2) {
            if (array[i].compareTo(array[i+1]) < 0) {
                smallerTempValue = array[i];
            } else {
                smallerTempValue = array[i+1];
            }
            if (smallestValue.compareTo(smallerTempValue) > 0) {
                smallestValue = smallerTempValue;
            }
        }
        return smallestValue;
    }
}
在Main方法中我想做这样的事情:
for (int i = 0; i < stringArray.length; i++) {
        someOtherArray[i] = Helper.smallestValueInArray(stringArray); …