有些东西不确定。

有些东西不确定。

最近在反编译一段java代码的时候,出现一个情况,凡是,字符串变量相加的代码,反编译的时候都是被优化了的代码,比如:
“abc ”+"edf"+"xyz"反编译后为 “abcedfzyz”。而 “sam”+new String(“tiger”)则变为:new StringBuilder().appen("sam").apperd("tiger").tostring
凡是字符串相加的代码,都会被以上方式给优化了,但是在循环里用字符串相加的话,则会变成在循环体类,new Stringbuilder。
比如:String str;
    for(int i=0;i<10;i++) str +=i;  则会变为:  for(int i=0;i<10;i++) new StringBuilder(str).append(i).toString;

你可能感兴趣的:(有些东西不确定。)