笑えるくらい簡単になった
public class Ploblem { static public void process(){ boolean brk = true;//順番を逆にすると再現しない intでも再現 boolean pre = false; System.out.println("---start---"); for(int i = 0; i < 1; ++i){ pre = brk; brk = false; System.out.println("if :" + pre); } System.out.println("end:" + pre); for(int i = 0; i < 10000; ++i);//数値を短くすると最適化までの時間が延びる? } public static void main(String args[]){ for(int i = 0; i < 3; ++i){ process(); } } }
結果
---start--- if :true end:true ---start--- if :true end:true ---start--- if :true end:false