这段代码还能不能优化?如题:Java codePublic boolean xxx(){int j6for(int i0 i10 i++){if(ij){retu
这段代码还能不能优化?
如题:
- Java code
Public boolean xxx(){ int j=6for(int i=0; i<10; i++){ if(i=j){ return false; } } return true;}[解决办法]
你执行过这段代码?确定没错?if里面的条件正确?
[解决办法]
感觉性能不是纠结在这个上面吧?
[解决办法]
[解决办法]
那么核心问题在这句话:
if(i==j){ //这个判断,要循环6次才能取值为6才返回false,如果j值为10000,那么要循环10000次,才返回false,我想这里做优化,判断false的时候直接i==j,避免循环10000次
也就是说,你有没有可以直接判断出 false 的其它方式,而不是必须得判断 (i==j)
这样才有可能将你的代码变成:
- Java code
public boolean xxx(){ int j=6; //这个j值是可变的 for(int i=0; i<xxoo.size(); i++) { if (SomeCondition?) { i = j; return false; } } //这里会添加items.add(item); return true;}
[解决办法]
这代码我看不出来有啥好优化的?
你优化了大半天,还不如 Java 编译器的 C1 优化和运行期的 C2 优化! 