У меня проблемы с заданием.Я довольно новичок в программировании, и мне трудно понять, как это сделать.Мой профессор предоставил код для добавления и удаления элементов из массива, но он хочет, чтобы мы добавили метод, который добавил бы элементы в массив в правильном положении.Это предоставленный код:
import java.util.*;
public class MyArrayList {
private Object[]buffer;
private int currentSize;
public MyArrayList(){
final int INITIAL_SIZE=10;
buffer = new Object[INITIAL_SIZE];
currentSize=0;
}
public int size() {
return currentSize;
}
private void checkBounds(int n){
if (n<0||n>= currentSize){
throw new IndexOutOfBoundsException();
}
}
public Object get (int pos){
checkBounds(pos);
return buffer[pos];
}
public Object remove(int pos){
checkBounds(pos);
Object removed = buffer[pos];
for (int i = pos+1; i < currentSize; i++){
buffer[i-1] = buffer[i];
}
currentSize--;
return removed;
}
public boolean add(int pos, Object newElement){
growBufferIfNecessary();
currentSize++;
checkBounds(pos);
for(int i = currentSize - 1; i > pos; i--){
buffer[i] = buffer [i-1];
}
buffer[pos] = newElement;
return true;
}
public boolean addLast(Object newElement){
growBufferIfNecessary();
currentSize++;
buffer[currentSize -1] = newElement;
return true;
}
private void growBufferIfNecessary(){
if (currentSize==buffer.length){
Object[] newBuffer = new Object[2*buffer.length];
for(int i=0; i<buffer.length; i++){
newBuffer[i] = buffer[i];
}
buffer = newBuffer;
}
}
}
Это наше назначение:
Добавьте метод с именем "public void insert (int n)", который добавит n к вашему объекту MyArrayList в правильномположение, поддерживающее отсортированный порядок.Используйте существующий класс MyArrayList с необходимой модификацией. Вот тестовый пример:
MyArrayList list = new MyArrayLst ();
list.insert (5);вставки (10);вставки (8);вставки (20);insert (6);
Если вы распечатываете список сейчас, он должен печататься как:
5
6
8
10
20
Итак, это то, что я пока имею в своем основном методе:
import java.util.*;
public class ArrayListHomework {
public static void main (String[]args){
MyArrayList list = new MyArrayList();
list.insert(5);
list.insert(10);
list.insert(8);
list.insert(20);
list.insert(6);
for (int i=0; i<list.size(); i++){
System.out.println(list.get(i));
}
}
}
Я очень запутался в том, как запустить этот метод вставки.Любая помощь будет оценена.Спасибо.