次のコードは、エラーや警告なしにコンパイルおよび実行されます。しかし、予期しない結果が得られます。
コード:
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;
}
}
class LLexp{
static LinkedList<LLObj> list = new LinkedList<>();
public static void main(String[] args){
list.addLast(new LLObj(5,'c'));
System.out.println(list.get(0).NodeInt);
System.out.println(list.get(0).NodeChar);
list.addLast(new LLObj(7,'h'));
System.out.println(list.get(0).NodeInt);
System.out.println(list.get(0).NodeChar);
System.out.println(list.get(1).NodeInt);
System.out.println(list.get(1).NodeChar);
}
}
期待される出力-
5
c
5
c
7
h
得られた出力-
5
c
7
h
7
h
- なぜこうなった?
- 期待される結果を得るにはどうすればよいですか?