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. 比较运算符"=="不能写成"=". > ...
随机推荐
- springIOC学习笔记
目录 目的 引用 xml方式 配置 配置实例 使用 底层简单模拟 全注解方式 基础 包扫描方式 配置 使用 config方式 配置 使用 spring整合junit 引用 示例 目的 让spring统 ...
- zabbix启动报错:Connection to database 'xxx' failed解决方法
Zabbix 分布式系统监视系统 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通 ...
- Gartner发布最新魔力象限报告,微软领跑数据库市场(编译自TechRepublic)
知名调研机构Gartner发布了最新的<2015年数据库管理系统魔力象限调研报告>.报告显示,微软.甲骨文和AWS是数据库市场的三大领导厂商. 此份报告对知名的商用以及开源数据库厂商进行了 ...
- 微软最新设计Fluent Design System初体验
微软最新设计Fluent Design System初体验 本文图片不全!建议移步知乎专栏查看!!! https://zhuanlan.zhihu.com/p/30582886 原创 2017-11- ...
- December 24th 2016 Week 52nd Saturday
The first step is as good as half over. 第一步是最关键的一步. If one goes wrong at the first steps, what shoul ...
- Docker简介与搭建
Docker定义 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相 ...
- require.js+backbone 使用r.js 在本地与生产环境 一键压缩的实现方式
require.js+backbone 使用r.js 在本地与生产环境 一键压缩的实现方式 时间:2017-07-03 17:18:11 阅读:210 评论:0 收藏:0 ...
- Windows和Linux环境,网络异常模拟测试方法【转载自光荣之路微信公众号】
1.网络异常的分类 在系统的运行过程中,可能会遇到各种各样的网络问题,其中主要可能出现的问题有 网络延迟:当网络信息流过大时,可能导致设备反应缓慢,造成数据传输延迟: 网路掉包:网路掉包是在数据传输的 ...
- 本地缓存和redis
项目中的传统架构在服务启动时 读取数据库的大部分数据到本地内存,在看到redis的作用时发出疑问,到底有什么样的区别以及怎么选择呢,下面是别人的回答 使用本地缓存快还是使用redis缓存好? Redi ...
- echarts仪表盘配置参数
require.config({ paths:{ echarts:"js/chart" } }); require([ 'echarts', 'echarts/chart/gaug ...