假设我有两个可以作为参数传递的字符串:
String one = "one";
String two = "two";
Run Code Online (Sandbox Code Playgroud)
以下哪种方法效果最好?
private void exampleOne(String example){
if(example.equals("one"){
// do this
}else{
// do this
}
}
private void exampleTwo(String example){
if(example.equals("one"){
//do this
}else if(example.equals("two"){
// do this
}
}
private void exampleThree(String example){
if(example.equals("one"){
// do this
}
if(example.equals("two"){
// do this
}
}
Run Code Online (Sandbox Code Playgroud)
如果它们具有相同的功能,我会比较效率的方法.目前,所有3种方法在功能上都不同.所以,比较它们没有意义.
exampleOne()- 如果example等于"one",则执行if.执行else所有其他值.
exampleTwo()- 如果example等于"one",则执行if.执行else if,如果它等于"two",否则对所有其他值,什么都不做- (这是一个区别).
exampleThree() - 嗯,这个(就目前而言)或多或少与第一个相同,但就效率而言,还有一个额外的比较,即顺便说一下,它不会产生太大的影响.但是,有两个机会if发言可以此方法,如果在两者之间执行,if报表,分配字符串"two"到example,这是不可能的exampleOne方法.更清楚的是,这里有两个独立的if块,而在第一个方法中,它是一个if-else块(只有一个块将被执行).
| 归档时间: |
|
| 查看次数: |
316 次 |
| 最近记录: |