Java之分支和循环
Java中的分支语句:
if语句:
if语句的四种写法:
(1)
if(表达式_布尔值) {
...
}
(2)
if(表达式_布尔值) {
...
} else {
...
}
(3)
if(表达式_布尔值) {
...
} else if(表达式_布尔值) {
...
}
(4)
if(表达式_布尔值) {
...
} else if(表达式_布尔值) {
...
} else {
...
}
if条件语句是一个重要的编程语句,它用于告诉程序在某个条件成立的情况下执行某段程序,而在另一种情况下执行另外的语句。
使用if条件语句,可选择是否要执行紧跟在条件之后的那个语句。关键字if之后是作为条件的“布尔表达式”,如果该表达式返回的结果为true,则执行其后的语句;若为false,则不执行if条件之后的语句。if条件语句可分为简单的if条件语句、if…else语句和if…else if多分支语句。
if语句例子:
public class GetTerm { // 创建主类
public static void main(String args[]) { // 主方法
int x = 20; // 声明int型局部变量
if (x > 30) { // 判断变量x是否大于30
System.out.println("a的值大于30"); // 条件成立的输出信息
} else if (x > 10) { // 判断变量x是否大于10
System.out.println("a的值大于10,但小于30"); // 条件成立的输出信息
} else if (x > 0) { // 判断变量x是否大于0
System.out.println("a的值大于0,但小于10"); // 条件成立的输出信息
} else { // 当以上条件都不成立时,执行的语句块
System.out.println("a的值小于0"); // 输出信息
}
}
}
switch语句:
int a = 2;
switch(a) {
case 1
...
break;
case 3
...
break;
case 5
...
break;
default
...
}
switch语句中表达式的值必须是整型或字符型,常量值1~常量值n必须也是整型或字符型。switch语句首先计算表达式的值,如果表达式的值和某个case后面的变量值相同,则执行该case语句后的若干个语句直到遇到break语句为止。此时如果该case语句中没有break语句,将继续执行后面case里的若干个语句,直到遇到break语句为止。若没有一个常量的值与表达式的值相同,则执行default后面的语句。default语句为可选的,如果它不存在,而且switch语句中表达式的值不与任何case的常量值相同,switch则不做任何处理。
switch语句例子:
public class GetSwitch { // 创建类
public static void main(String args[]) { // 主方法
int week = 2; // 定义int型变量week
switch (week) { // 指定switch语句的表达式为变量week
case 1: // 定义case语句中的常量为1
System.out.println("Monday"); // 输出信息
break;
case 2: // 定义case语句中的常量为2
System.out.println("Tuesday");
break;
case 3: // 定义case语句中的常量为3
System.out.println("Wednesday");
break;
default: // default语句
System.out.println("Sorry,I don't Know");
}
}
}
if switch的区别:
if语句使用场景:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句使用场景:
针对几个常量值的判断
switch建议判断固定值的时候用
if建议判断区间或范围的时候用
*用switch能做的,用if都能做,反过来则不行
Java中的循环语句:
(1)
for(int i=0;i<10;i++) {
...
}
(2)
while(表达式_布尔值) {
}
(3)
do {
} while(表达式_布尔值);
三种循环语句简单实例:
public class Test2 {
public static void main(String[] args){
int i=0;
for(;i<3;i++){
System.out.println("for:"+i);
}
while(i<6){
System.out.println("while:"+i);
i++;
}
do{
System.out.println("do:"+i);
i++;
}while(i<9);
}
}

综合例子1:
如何输入成绩,得出评分:
import java.util.Scanner;
public class Lianxi
{
public static void main(String[] args){
int i=1;
//使用死循环不断判断
for(;i<10;i--){
Scanner scanner=new Scanner(System.in);
String str=scanner.nextLine();
int a =Integer.parseInt(str);
if(str=="55"){
i=11;
System.out.println("结束了");
}
if(a<=100&&a>80){
System.out.println("优秀");
}else if(a<=80&&a>60){
System.out.println("良好");
}else if(a<=60&&a>50){
System.out.println("尚可");
}else if(a<=50&&a>=0){
System.out.println("不可");
}else {
System.out.println("输入有错误!!!");
}
}
}
}
综合例子2:
输出菱形
public class Var_02 {
public static void main(String args[]) {
int lineCount = 17;// 输出的菱形有多少行,请赋值成奇数
int maxLineNum = (lineCount + 1) / 2;// 菱形最多一行
for (int i = 1; i <= maxLineNum; i++) {// 循环菱形数量越来越多的几行
for (int space = 1; space <= maxLineNum - i; space++) {// 输出空格,数量=最后一行-当前行数
System.out.print(" ");
}
for (int star = 1; star <= (i * 2) - 1; star++) {// 输出星号,数量=行数*2-1
System.out.print("* ");
}
System.out.println();// 换行
}
int declineCount = lineCount - maxLineNum;// 计算剩下的几行,这几行星号的数量是递减的
for (int i = 1; i <= declineCount; i++) {// 循环菱形数量越来越少的行数
for (int space = 1; space <= i; space++) {// 输出空格,数量等于当前的行数
System.out.print(" ");
}
for (int star = 1; star <= (declineCount - i + 1) * 2 - 1; star++) {// 输出星号,数量等于(总数-当前行数)*2-1
System.out.print("* ");
}
System.out.println();
}
}
}
补充:
foreach语句:
是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而任何foreach语句都可以改写为for语句版本。foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为foreach语句。foreach语句在遍历数组等方面为程序员提供了很大的方便(本书将在第6章对数组进行详细的介绍),语法如下所示:
for(元素变量x : 遍历对象obj) {
引用了x的java语句;
}
例子:
public class Repetition { // 创建类Repetition
public static void main(String args[]) { // 主方法
int arr[] = { 7, 10, 1 }; // 声明一维数组
System.out.println("一维数组中的元素分别为:"); // 输出信息
for (int x : arr) {
//foreach语句,int x引用的变量,arr指定要循环遍历的数组,最后将x输出
System.out.println(x);
}
}
}
Java之分支和循环的更多相关文章
- Java控制语句——分支、循环、跳转
分支语句(if语句,switch语句): 循环语句(for,while,do...while); 跳转语句(break,continue,return): 分支语句(if语句,switch语句) if ...
- java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...
- [零基础学JAVA]Java SE基础部分-04. 分支、循环语句
转自:http://redking.blog.51cto.com/27212/116751 1.课程名称:分支.循环 本季为JAVA程序中最重要的部分,在讲解的时候除了讲解各种主要的控制语句(分支语句 ...
- Android.mk (2) 函数进阶教程 - 分支、循环、子程序
https://www.jianshu.com/p/674dc7d7b4b0 函数进阶教程 - 分支.循环.子程序 按照面向过程程序设计的标准流程,我们讲完了顺序结构,就要讲分支.循环和子程序.下面我 ...
- 02_5if switch分支与循环语句
02_5if switch分支与循环语句 1.语句 1.1条件语句-根据不同条件,执行不同语句. if if ... else if ... else if if ... else if ... el ...
- python分支和循环结构
本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...
- 【.net 深呼吸】细说CodeDom(8):分支与循环
有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...
- JAVA中的for-each循环与迭代
在学习java中的collection时注意到,collection层次的根接口Collection实现了Iterable<T>接口(位于java.lang包中),实现这个接口允许对象成为 ...
- SQL变量、运算符、分支、循环语句
变量: SQL语言也跟其他编程语言一样,拥有变量.分支.循环等控制语句. 在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量. 局部变量: 使用declare关键字给变量声明,语法非常 ...
随机推荐
- UX2内核浏览加速技术纲要
UX2内核是本人负责主要开发的浏览服务项目,其主要目的是为开发者提供一个简单好用.轻便的网络浏览服务.UX2内核的安卓端是基于WebView进行深度优化的,同时欢迎大家使用这个内核用于app页面或浏览 ...
- mysql之 binlog维护详细解析(开启、binlog相关参数作用、mysqlbinlog解读、binlog删除)
binary log 作用:主要实现三个重要的功能:用于复制,用于恢复,用于审计.binary log 相关参数:log_bin设置此参数表示启用binlog功能,并指定路径名称log_bin_ind ...
- 一天搞定CSS: 清除浮动(float)--13
上一节已经说明了为什么要清除浮动了.这里我们就来解决浮动产生的各种问题. 为什么要清楚浮动? 地址:http://blog.csdn.net/baidu_37107022/article/detail ...
- Java IO流之打印流与标准流
一.打印流 1.1打印流特点与构造方法 1)PrintStream和PrintWriter类都提供了一系列重载的print和println方法来输出各种类型的数据. 2)PrintStream和Pri ...
- Chrome 开发者工具断点调试(视频教程)
很多人不了解 Chrome Dev Tools (开发者工具)的使用方法和技巧. 其中很多技能,无论是前端开发从业者,还是普通用户,了解一些还是对日常很有帮助的. 本猿定期录制.甚至根据您的需求来订制 ...
- 深入探索C++对象模型(五)
构造.解构.拷贝语意学(Semantics of Construction,Destruction, and Copy) 一般而言,class的data member应该被初始化,并且只在constr ...
- Spring 依赖注入之从不会到稍微会一点儿
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- python网络爬虫之scrapy 工程创建以及原理介绍
执行scrapy startproject XXXX的命令,就会在对应的目录下生成工程 在pycharm中打开此工程目录:并在Run中选择Edit Configuration 点击+创建一个Pytho ...
- OS X 和iOS 中的多线程技术(下)
OS X 和iOS 中的多线程技术(下) 上篇文章中介绍了 pthread 和 NSThread 两种多线程的方式,本文将继续介绍 GCD 和 NSOperation 这两种方式.. 1.GCD 1. ...
- Xcode9新特性介绍-中文篇
背景: Xcode 9 新特性介绍: 1.官方原文介绍链接 2.Xcode9 be ta 2 官方下载链接 本文为官方介绍翻译而来,布局排版等都是按照官方布局来的. 与原文相比,排版上基本还是熟悉的配 ...