官术网_书友最值得收藏!

Conditional execution

The heart of the sort is the condition and the value swapping inside the loop.

                if (names[j].compareTo(names[j + 1]) > 0) { 
final String tmp = names[j + 1];
names[j + 1] = names[j];
names[j] = tmp;
}

There is only one conditional command in Java, the if command. It has the following format:

if( condition ) block else block

The meaning of the code structure is quite straightforward. If the condition is true, then the first block is executed, otherwise, the second block is executed. The else keyword, along with the second block, is optional. If there is nothing to be executed in case that the condition is false, then there is no need for the else branch, just like in the example. If the array element indexed with j is later in the sort order than the element j+1, then we swap them, but if they are already in order, there is nothing to do with them.

To swap the two array elements, we will use a temporary variable named tmp. The type of this variable is String, and this variable is declared to be final. The final keyword has different meanings depending on where it is used in Java. This may be confusing for beginners unless you are warned about it, just like now. A final class or method is a totally different thing than a final field, which is again different than a final local variable.

主站蜘蛛池模板: 八宿县| 府谷县| 亚东县| 佳木斯市| 云梦县| 买车| 富源县| 新疆| 神池县| 陇南市| 和田市| 崇州市| 湖北省| 沛县| 长治县| 永靖县| 习水县| 德安县| 关岭| 福鼎市| 苍南县| 河间市| 榆林市| 德州市| 六盘水市| 新兴县| 土默特右旗| 通化市| 个旧市| 太康县| 柯坪县| 宜兴市| 红安县| 九龙县| 土默特左旗| 德清县| 全州县| 旺苍县| 山丹县| 武清区| 阿拉善右旗|