2012-04-04 4 views
1

문제가 있습니다.LinkedList에서 int와 String을 비교했습니다.

String과 int를 비교하려고하지만 작동하지 않는 것 같습니다. 내가 뭘 잘못하고 있니? 배열 유형이어야합니다

표현의 유형을하지만 이것은 내가 '게임의 최고 점수 TEXTFILE입니다

int numberOfMoves; 
    List<String> highscoreLinkedList = new LinkedList<String>(); 

    if (moves < Integer.parseInt(highscoreLinkedList[2])){ 
     highscoreLinkedList[2] = Integer.toString(moves); 
     highscoreLinkedList[1] = name; 
    } 

을 목록에 해결 :

이클립스에서이 얻기 나는 만들고있어. 인덱스 2의 문자열은 이동 횟수이고 int 이동은 여러 이동 횟수입니다.

+0

글쎄, 당신이 잘못하고 있다고 말하는 것은 무엇입니까? –

+0

죄송합니다. 지금 편집되었습니다. – user1258829

답변

3

highscoreLinkedList[2]을 사용하여 목록 요소에 액세스 할 수 없습니다.이 구문은 배열 용으로 예약되어 있습니다. 목록에 액세스하려면 메소드를 사용해야합니다. 즉, highscoreLinkedList.get(2)

+0

오 세상에, 나는 너무 어리 석다. Totaly 배열 및 LinkedList 최대 혼합 ... 바보 같은 멍청한! 감사! – user1258829

+0

이것은 설정 문제를 해결하지 못합니다 ... – Jon

1

입니다. 목록을 배열로 취급하려고하지만이 요소에 액세스하는 유일한 방법은 get() 메소드를 호출하는 것입니다. 코드가 컴파일되지 않습니다.

+0

오 세상에, 나는 너무 어리 석다. Totaly 배열 및 LinkedList 최대 혼합 ... 바보 같은 멍청한! 감사! – user1258829

+0

그런데 LinkedList의 요소를 임의 액세스하는 것은 효율적이지 않습니다. ArrayList 또는 array 사용을 고려하십시오. – ahanin

1

List은 Java의 배열과 같은 방식으로 작동하지 않습니다. 특정 요소에 액세스하려면, 당신은 get() 방법을 사용하고, 요소를 얻을 수 있고, 당신과 같이, set()를 사용해야합니다 : 당신은 LinkedListhere 위해 모든 방법을 볼 수 있습니다

// you have highscoreLinkedList[2], it should be: 
highscoreLinkedList.get(2); 

// you have highscoreLinkedList[2] = ..., it should be: 
highscoreLinkedList.set(2, Integer.toString(moves)); 

.

+0

오 세상에, 나는 너무 어리 석다. Totaly 배열 및 LinkedList 최대 혼합 ... 바보 같은 멍청한! 감사! – user1258829

관련 문제