Java: вставить элемент в середине пользовательского универсального вектора - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь написать код для вставки строки / целого числа / нуля в середину универсального вектора в JAVA.Но эта часть кода не компилируется.В чем может быть проблема?Спасибо.Я также добавляю сообщения об ошибках.

public synchronized void addToPosition (T element, int index) {
    if (index+1 == size-1) {
        ensureCapacity();
    }
    System.out.println("Add element to position:");
    Scanner scanner = new Scanner(System.in);
    index = scanner.nextInt();
    if (index < 0 || index > this.index-1) {
        throw new IndexOutOfBoundsException();
    }
    T[] newElementData = (T[]) new Object [size];
    for (i = 0; i < index; i++) {
        newElementData[i] = elementData[i];
    }
    System.out.println("Which element to add?");
    element = (T) scanner.nextLine();
    newElementData[index] = element;
    for (i = index+1; i < this.index; i++) {
        newElementData[i] = elementData[i+1];
    }
    elementData = newElementData;
    this.index++;
}

сообщения об ошибках

1 Ответ

0 голосов
/ 05 марта 2019

Как вы сказали в комментариях, вы вызываете метод addToPosition() следующим образом:

vectorList.addToPosition();

, а сигнатура метода следующая:

public synchronized void addToPosition (T element, int index) {

Так что они нет совпадают.Например, вы можете избавиться от параметров:

public synchronized void addToPosition () {
    T element;  // the values you will read later from user input
    int index;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...