Ошибка - требуется массив, но LinkedList ‹LLObj› найден в java

Я новичок в JAVA, и я пытаюсь реализовать простой код связанного списка в java, используя библиотеку java.util.LinkedList и динамический тип данных (класс)

Код выглядит следующим образом -

import java.util.LinkedList;
import java.util.Scanner;

//defining a custom data-type (class)
class LLObj{
static int NodeInt;
static char NodeChar;
LLObj(int x, char y){
    NodeInt = x;
    NodeChar = y;
    }
}

//main class    
public class LL2{

static int ChosenOption, TempInt, NodeCounter, TempCounter;
static char TempChar;

//creating scanner object
static Scanner ScannerObj = new Scanner(System.in);

//creating a link list
static LinkedList<LLObj> list = new LinkedList<>();

//main function
public static void main(String[] args){

    NodeCounter = 0;

    //driving menu
    for(;;){
    System.out.println("Enter 1 to add a node to linked list");
    System.out.println("Enter 2 to print the current list");
    ChosenOption = ScannerObj.nextInt();
    if(ChosenOption == 1){
        AddNew();
        }
    else if(ChosenOption == 2){
        PrintList();
        }
    else{
        System.out.println("Wrong Input. Try again!");
        }
    }
}

//AddNew function
public static void AddNew(){

    //getting input
    System.out.println("Enter integer");
    TempInt = ScannerObj.nextInt();
    System.out.println("Enter character");
    TempChar = ScannerObj.next().charAt(0);

    //Making a temperory node
    LLObj temp = new LLObj(TempInt,TempChar);

    //adding node to the list
    list.addLast(temp);
    }

public static void PrintList(){
    TempCounter = 0;
    while(TempCounter < NodeCounter){
        System.out.println(list[TempCounter].NodeInt);
        System.out.println(list[TempCounter].NodeChar);
        System.out.println("");
        TempCounter++;
        }
    }       
}

Ошибка, полученная при компиляции: «Требуется массив, но найден LinkedList».

Пожалуйста, помогите мне в 1. Понять, почему возникает эта ошибка 2. Удаление этой ошибки

Любая помощь будет оценена по достоинству :)


person shivamtiwari93    schedule 27.03.2013    source источник
comment
попробуйте переопределить частный статический список ‹LLObj› list = LinkedList ‹LLObj› ();   -  person Miloš Lukačka    schedule 27.03.2013


Ответы (2)



Вместо этого используйте list.get(TempCounter).NodeInt

person Mohan Raj B    schedule 27.03.2013