java与.net比较学习系列(5) 流程控制语句
java中流程控制语句主要分为以下几类,第一,条件语句,主要包括if语句和switch语句。第二,循环语句,主要包括while循环语句,for循环语句。第三,跳转语句,主要包括三种,break跳出语句,continue继续语句和return返回语句。可以说分类和用法大致与C#基本相同。
这篇文章主要从以下几个方面进行总结。
1,条件语句之if语句
2,条件语句之switch语句
3,循环语句之while循环
4,循环语句之for循环
5,跳转语句之return返回
6,跳转语句之break跳出
7,跳转语句之continue继续
条件语句之if语句
这里的if语句包括了if语句和if…else语句。其中if语句是按条件执行,if…else则实现了双路分支,它可以控制程序在两个不同的路径中执行。当然,if语句和if…else语句可以混合使用,但是有一个原则是else语句总是和其最近的if语句相搭配。下面是示例和代码。

public class StatementIf { /**
* @param args
*/
public static void main(String[] args) {
// if条件语句
int k = 87; // 表示成绩
String str = null; // 表示成绩评价 if (k < 0 || k > 100) {
str = "成绩不合法";
}
if (k < 60) {
str = "不及格";
}
if (k >= 60 && k < 75) {
str = "合格";
}
if (k >= 75 && k < 85) {
str = "优秀";
} else {
str = "良好";
}
System.out.println("分数:" + k + "评价:" + str);
}
}

程序输出结果为:分数:87评价:良好
总结:条件语句的if语句用法与C#相同。
条件语句之switch语句
上面的示例中使用了if…else阶梯的形式进行多路分支语句的处理,但是这样的过程非常复杂,所以java提供了一种简单的形式实现了多路分支情况的处理,即switch语句。下面是示例和代码。

public class StatementSwitch { /**
* @param args
*/
public static void main(String[] args) {
// Switch语句
int k = 5;
String str = "k=" + k + "的汉字形式是:"; switch (k) { // switch中的表达式可以是整形或字符串
case 1:
str += "一";
break;
case 2:
str += "二";
break;
case 3:
str += "三";
break;
case 4:
str += "四";
break;
case 5:
str += "五";
break;
case 6:
str += "六";
break;
case 7:
str += "七";
break;
default:
str += "数字超出范围";
break;
}
System.out.println(str);
}
}

程序输出结果为:k=5的汉字形式是:五
总结:java中的switch语句用法与C#基本相同。
循环语句之while循环
while循环的特点是当条件为true时会一直执行循环体的内容,直到条件的值为假时为止。下面是示例和代码。

public class StatementWhile { /**
* @param args
*/
public static void main(String[] args) {
// while循环(当条件为true时会一直执行循环体的语句,直到条件为假为止)
int n = 10;
while (n > 0) {
System.out.println("n=" + n);
n--;
}
}
}

程序输出结果为:
n=10 n=9 n=8 n=7 n=6 n=5 n=4 n=3 n=2 n=1
总结:java的while循环语句用法与C#基本相同。
循环语句之for循环
for循环语句是while循环的加强,注意for循环的语法格式,下面是示例和代码。

public class StatementFor { /**
* @param args
*/
public static void main(String[] args) {
// for语句
// 计算1到100各整数的和
int sum = 0;
for (int n = 100; n > 0; n--) {
sum += n;
}
System.out.println("1到100各整数的和为:" + sum);
}
}

程序输出结果:1到100各整数的和为:5050
总结:java中的for循环用法与C#基本相同,但是C#中新增了foreach语句可以遍历实现了IEnumerable接口的数组或对象集合,java中也有类似于C#中的foreach语句,但是形式不同,具体的用法在后面会进行总结。
跳转语句之return返回
return返回语句,一般用于方法的返回,它把程序的控制权交给方法的调用者。return可以有返回值也可以没有。下面是示例和代码。

public class StatementReturn { /**
* @param args
*/
public static void main(String[] args) {
// return返回语句,一般用于方法的返回,它把程序的控制权交给方法的调用者
for (int i = 0; i < 10; i++) {
if (i < 5) {
System.out.println("第" + i + "次循环");
} else if (i == 5) {
return;
}
// 下面的语句永远不会执行
else {
System.out.println("第" + i + "次循环");
}
}
}
}

程序输出结果为:
第0次循环 第1次循环 第2次循环 第3次循环 第4次循环
总结:java中的return返回语句的用法与C#基本相同。
跳转语句之break跳出
break语句的主要作用是强制跳出循环,即使在条件仍然满足的情况下。循环被终止,并从循环后下一句处继续执行程序。下面是示例和代码。

public class StatementBreak { /**
* @param args
*/
public static void main(String[] args) {
// break语句,跳出循环,将控制传递给循环后面的语句
System.out.println("使用break的例子");
for (int i = 0; i <= 50; i++) {
System.out.println("i=" + i);
if (i == 10)
break; // 当i等于10的时候跳出循环
}
System.out.println("循环跳出");
}
}

程序输出结果为:
使用break的例子 i=0 i=1 i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i=10 循环跳出
总结:break语句的用法与C#基本相同。
跳转语句之continue继续
continue语句的作用是终止当次循环剩余的部分,然后继续执行下次循环。它不像break完全终止循环,这一点需要注意。下面是示例和代码。

public class StatementContinue { /**
* @param args
*/
public static void main(String[] args) {
// continue语句,停止当前循环的剩余部分,继续执行下一次循环
for (int i = 1; i <= 50; i++) {
System.out.print(i + " ");
if (i % 5 != 0) {
continue;
} else {
// 当i除以5等于0时换行
System.out.println("*****");
}
}
}
}

程序输出结果为:
1 2 3 4 5 ***** 6 7 8 9 10 ***** 11 12 13 14 15 ***** 16 17 18 19 20 ***** 21 22 23 24 25 ***** 26 27 28 29 30 ***** 31 32 33 34 35 ***** 36 37 38 39 40 ***** 41 42 43 44 45 ***** 46 47 48 49 50 *****
总结:java中的continue语句用法与C#基本相同,在循环语句中比较常用。
文章摘自:http://www.cnblogs.com/mcgrady/p/3407437.html
java与.net比较学习系列(5) 流程控制语句的更多相关文章
- Java学习笔记之---流程控制语句
Java学习笔记之---流程控制语句 (一)循环语句 (1)if语句 if(布尔表达式){ //如果布尔表达式为true将执行的语句 } if(i%2!=0){ System.out.println( ...
- Java I/O系统学习系列二:输入和输出
编程语言的I/O类库中常使用流这个抽象概念,它代表任何有能力产出数据的数据源对象或者是有能力接收数据的接收端对象.“流”屏蔽了实际的I/O设备中处理数据的细节. 在这个系列的第一篇文章:<< ...
- java与.net比较学习系列(2) 基础语言要素
这一篇从最基础的开始对比总结,说起基础语言要素,故名思义,就是学习语言的基础,主要内容包括标识符,关键字和注释.我想从以下几点进行总结,有区别的地方有都使用红色粗体字进行了总结. 1,标识符 2,关键 ...
- java与.net比较学习系列开发环境和常用调试技巧常用操作快捷键
调试 F5 F11 调试运行 CTRL+F5 暂无 非调试运行 F6 不适用 编译整个解决方案 SHIFT+F6 不适用 编译当前选择的工程 SHIFT+F5 CTRL ...
- Dart语言学习(十) Dart流程控制语句
一.条件语句:if.if...elseif.if...elseif...else int score = 95; if (score >=90) { print('优秀'); } else if ...
- Java基础(Scanner、Random、流程控制语句)
第3天 Java基础语法 今日内容介绍 u 引用数据数据类型(Scanner.Random) u 流程控制语句(if.for.while.dowhile.break.continue) 第1章 引用数 ...
- java与.net比较学习系列(1) 开发环境和常用调试技巧
最近因为公司项目要由.net平台转到java平台的原因,之前一直用.net的我不得不开始学习java了,刚开始听到说要转java的时候很抗拒,因为我想专注在.net平台上,不过这样也并不完全是坏事,通 ...
- Java I/O系统学习系列一:File和RandomAccessFile
I/O系统即输入/输出系统,对于一门程序语言来说,创建一个好的输入/输出系统并非易事.因为不仅存在各种I/O源端和想要与之通信的接收端(文件.控制台.网络链接等),而且还需要支持多种不同方式的通信(顺 ...
- Java 7 源码学习系列(一)——String
String表示字符串,Java中所有字符串的字面值都是String类的实例,例如“ABC”.字符串是常量,在定义之后不能被改变,字符串缓冲区支持可变的字符串.因为 String 对象是不可变的,所以 ...
随机推荐
- [Redux] Extracting Presentational Components -- Footer, FilterLink
Code to be refactored: let nextTodoId = 0; class TodoApp extends Component { render() { const { todo ...
- Picasso – Android系统的图片下载和缓存类库
Picasso – Android系统的图片下载和缓存类库 Picasso 是Square开源的一个用于Android系统下载和缓存图片的项目.该项目和其他一些下载图片项目的主要区别之一是:使用4.0 ...
- 传感器仿真平台——UI绘制模块(二)
这一章讲的是UI绘制模块 该模块的作用是将实验对象绘制出来,它可能是目标.传感器等等,由于事先并不知道会有哪些物体,也无法事先定义好某个对象该怎么画,以我懒人的性格,得了,就抛给用的人吧~喝前摇一摇, ...
- 一个简单的ajax对象
function ajax(options) { //请求参数 options = { //类型 type: options.type || "Post", //地址 url: o ...
- Linux 下安装oracle数据库
原文出处 http://www.linuxidc.com/Linux/2015-02/113222.html 需要安装Oracle DataGuard,所以先要安装单台Oracle11g, ...
- iOS_SN_深浅拷贝( 百度的)_转载
文章原地址:http://www.cnblogs.com/5ishare/p/4362459.html 深浅拷贝前提是:是实现NSCopying或者NSMutableCopying协议. 浅拷贝只是复 ...
- 【0】Laravel 5.1 简介
1.简介 Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以 ...
- Js与Jq 获取浏览器和对象值的方法
JS and Jquery 都能获取页面元素的宽度,高度和相对位移等数值,那他们之间能相互转换或替代吗,写法又有哪些差异呢?本文将详细为你介绍. 1.Js获取浏览器高度和宽度document.docu ...
- linux 文件类命令笔记
看一下linux的教程,不错,由于只看鸟哥有点空洞,于就是找了个视频教程,边看边学 对比了几个教程,http://edu.51cto.com/course/course_id-32.html这个教程相 ...
- 【好程序员笔记分享】——Cocoapods集成
-iOS培训,iOS学习-------型技术博客.期待与您交流!------------ Xcode集成POD教程 准备工作: 首先我们要在我们的电脑中安装POD,进入命令行,输入如下指令 sudo ...