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

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.

主站蜘蛛池模板: 湖州市| 铜梁县| 阿克| 清丰县| 德州市| 新安县| 巴林左旗| 凤翔县| 习水县| 兴安县| 镇平县| 鄂托克前旗| 西乌珠穆沁旗| 温宿县| 安图县| 石首市| 渭南市| 镇坪县| 阜平县| 新余市| 武功县| 前郭尔| 绍兴县| 溧水县| 老河口市| 张掖市| 图片| 北辰区| 读书| 海口市| 浪卡子县| 板桥市| 雅安市| 南漳县| 松滋市| 桦川县| 巴里| 怀化市| 云林县| 来凤县| 会宁县|