public class Test {
private static void funct(final int i) {
new Thread(new Runnable() {
public void run() {System.out.println(i);}
}).start();
}
public static void main(String[] args) {
System.out.println(1);
funct (2);
System.out.println(3);
funct (4);
System.out.println(5);
}
}
実行するたびに、次のいずれかの解決策が得られます。なぜそうなのか?1 3 5 4 2
1 3 5 2 4
1 3 2 5 4