Вот код:
public class Arraylist<Type> {
private Type array[];
public int getLength() {
if(array==null) return 0;
return array.length;
}
public void add(Type a) {
Type array2[] = new Type[getLength()+1];//Нельзя создать массив универсального типа
array2 = array;
array2[getLength()] = a;
array = array2;
array2 = null;
}
public void remove(int i) {
Type[] array2 = new Type[getLength()-1]; //Такая же ошибка
for(int a=-1;a<i;a++) array2[a]=array[a];
for(int a=i;a<getLength()-1;a++) array2[a]=array[a+1];
array=array2;
array2=null;
}
public Type get(int i) {
return array[i];
}
public Type[] get() {
return array;
}
public String get(Arraylist<Type> obj) {
String a = "";
for(int i=-1;i<obj.getLength();i++) a+=String.valueOf(obj.get(i))+(i==obj.getLength()?"\n":"\n ");
return a;
}
public void swap(int i,int j) {
Type swap=array[i];
array[i]=array[j];
array[j]=swap;
swap=null;
}
}
Что делать?
Вы не можете получить инстанс дженерика напрямую. Загляните в реализацию базового ArrayList, там есть ответ на ваш вопрос. Там, где нужно работать с элементами вашего списка напрямую - обращайтесь в ним, как к экземплярам класса Object. Вот так реализован метод add в ArrayList:
public boolean add(E e) {
ensureCapacityInternal(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
После обновления версии библиотек в buildgradle RecyclerView на api lvl 24+ отображает данные через раз, но на api lvl <24 всё работает стабильно
Проблема состоит в следующем, мой jar файл запускается в товарища на ноуте, а у меня нетВерсия jdk у нас одинаковая