Java实例 Part3:流程控制
这一部分流程控制语句包括:顺序结构、选择结构、循环结构、跳转语句。

具体区别待补充。。。
@
Example01:判断某一年是否为闰年
要求:用户输入年份,并判断输入的年份是否为闰年。
运行结果:

实现代码:
import java.util.Scanner;
public class Example01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入年份:");
int year = scanner.nextInt();
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
System.out.println(year+"年是闰年!");
}else{
System.out.println(year+"年不是闰年!");
}
}
}
要点: 判断一个年份是否闰年,要满足两个条件:一是能被4整除但不能被100整除,另一个是能被400整除。
year % 4 == 0 && year % 100 != 0 || year % 400 == 0</>
Example02:验证登录信息的合法性
运行结果:

实现代码:
import java.util.Scanner;
public class Example02 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入用户名:");
String username = scanner.nextLine();
System.out.println("请输入密码:");
String password = scanner.nextLine();
if (!username.equals("admin")){
System.out.println("用户名不正确!");
} else if(!password.equals("123")){
System.out.println("密码不正确!");
}else {
System.out.println("恭喜你,登录信息通过验证!");
}
}
}
要点: 字符串属于对象而非基本数据类型,不能使用“= =”来判断两个字符串是否相等,所以要通过equal()来判断两个字符串内容是否相同。使用“= =”判断的是两个字符串对象的内存地址,而非字符串内容。
语法:
if(表达式){
若干语句;
}else If(表达式){
若干语句;
}else{
若干语句;
}
Example03:判断用户输入月份的季节
运行结果:

实现代码:
import java.util.Scanner;
public class Example03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入月份:");
int month = scanner.nextInt();
switch (month){
case 12:
case 1:
case 2:
System.out.println(month+"月是冬季!");
break;
case 3:
case 4:
case 5:
System.out.println(month+"月是春季!");
break;
case 6:
case 7:
case 8:
System.out.println(month+"月是夏季!");
break;
case 9:
case 10:
case 11:
System.out.println(month+"月是秋季!");
break;
default:
System.out.println("没有这个月份哦!!!");
}
}
}
要点: 该实例用到的是switch选择结构。
语法:
switch(表达式){
case 常量表达式1:语句序列1
[break;]
case 常量表达式2:语句序列2
[break;]
...
case 常量表达式n:语句序列n
[break;]
default:语句序列n+1
[break;]
}
Example04:使用while循环语句与自增运算符循环遍历数组
运行结果:

实现代码:
public class Example04 {
public static void main(String[] args) {
//创建数组
String[] strings = {"Java","C","C++","Pathon","PHP"};
int index = 0; //创建索引变量
System.out.println("编程语言有:");
while (index < strings.length){ //遍历数组
System.out.println(strings[index++]); //自增索引值
}
}
}
要点: 注意自增自减前置和后置的区别。
语法:
while(条件表达式){
语句表达式;
}
Example05:使用for循环输出杨辉三角
要求: 输出10行内容的杨辉三角。利用二维数组,其中杨辉三角的两侧值都为1,其他位置的数值是其正上方的数值与左上角数值之和。
运行结果:

实现代码:
public class Example05 {
public static void main(String[] args) {
int triangle[][] = new int[10][];
//遍历数组的第一层
for (int i = 0;i<triangle.length;i++){
//初始化第二层数组的大小
triangle[i] = new int[i+1];
for (int j = 0;j<=i;j++){
if (i==0||j==0||i==j){
triangle[i][j] = 1;
}else {
triangle[i][j] = triangle[i-1][j] + triangle[i-1][j-1];
}
System.out.print(triangle[i][j]+"\t");
}
System.out.println();
}
}
}
要点: 在二维数组中,第一个下标值表示行数,第二个下标值表示的是列数。两侧数值为0,其余数值通过计算:
triangle[i][j] = triangle[i-1][j] + triangle[i-1][j-1];
Java实例 Part3:流程控制的更多相关文章
- Java中的流程控制(三)
关于Java中的流程控制 关于Java中的流程控制 4.do while语句 do while语句的功能和while语句差不多,只不过它是在执行完第一次循环后才检测条件表达式的值,这意味着包含在大括号 ...
- Java中的流程控制(二)
关于Java程序的流程控制(二) 关于Java程序的流程控制(二) 3.switch选择语句 switch语句用于将一个表达式的值同许多其他值比较,并按比较结果选择下面该执行哪些语句. switch( ...
- Java中的流程控制(一)
程序的流程控制(一) 关于Java程序的流程控制(一) 从结构化程序设计角度出发,程序有三种结构: 顺序结构 选择结构 循环结构 1.顺序结构 就是程序从上到下一行行执行,中间没有判断和跳转. 2.i ...
- Java 基本语法---流程控制
Java 基本语法---流程控制 0. 概述 三大流程控制语句:顺序.选择.循环. 选择结构: if 结构,if - else结构: 多重 if - else 语句 ; 嵌套 if - else 语句 ...
- Java基础-程序流程控制第二弹(循环结构)
Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...
- Java基础-程序流程控制第一弹(分支结构/选择结构)
Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...
- Java编程基础——流程控制
Java编程基础——流程控制 摘要:本文主要介绍Java编程中的流程控制语句. 分类 流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下三种: 顺序结构:从上到下依次执行每条语句操作 ...
- Java 基础 程序流程控制 (下)
Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...
- Java 基础 程序流程控制 (上)
Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...
- Java运算符和流程控制
1 运算符 1.1 比较运算符 比较运算符的结果都是boolean类型,也即是要么是true,要么是false. 比较运算符"=="不能写成"=". > ...
随机推荐
- 贪心算法和动态规划[zz]
http://www.cnblogs.com/asuran/archive/2010/01/26/1656399.html 贪心算法 1.贪心选择性质 所谓贪心选择性质是指所求问题的整体最优解可以通过 ...
- daD
Linux centos7环境下MySQL安装教程_Mysql_脚本之家 脚本之家 软件下载 android软件 MAC软件 驱动下载 字体下载 DLL下载 源码下载 asp源码 php源码 asp. ...
- Python初学者第十九天 函数(3)
19day 函数 1.作用域 Python中,一个函数就是一个作用域.所有的局部变量都是放在当前的作用域里面 代码定义完成后,作用域已经生成,作用域链向上查找 2.匿名函数 当需要暂时性的用到一个函数 ...
- lua垃圾回收之空表
故事背景: 自己手动手写的一个lua外部库luaopen_xxx,采用了tolua++1.0.93,编译后得到xxx.dll,当在luajit中require 'xxx'后是正常的,但如果运行环境换成 ...
- August 22nd 2017 Week 34th Tuesday
Stop trying to find a rewind. It's life, not a movie. 别妄想倒带,这是生活,不是电影. There is no need to go back t ...
- Python的优雅写法
枚举 之前我们这样操作: Python 1 2 3 4 i = 0 for item in iterable: print i, item i += 1 现在我 ...
- Template-Driven Forms 模板驱动式表单
Angular 4.x 中有两种表单: Template-Driven Forms - 模板驱动式表单 (类似于 AngularJS 1.x 中的表单 ) Reactive Forms - 响应式表单 ...
- BZOJ5072:[Lydsy1710月赛]小A的树(树形DP)
Description BZOJ只是扔了个下载链接 Solution 设$f[x][i]$表示$x$点选中$i$个黑点的最小连通块. 设$g[x][i]$表示$x$点选中$i$个黑点的最大连通块. 转 ...
- 2019.3.25 IDEA控制台乱码解决 &&idea关闭代码自动提示
设置Tomcat里面的conf文件夹下的properties结尾的文件
- 20165302实验二java面向对象程序设计
20165302实验二java面向对象程序设计 实验结果 提交点1 1.实验要求: 参考 (http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTE ...