Java04-Java语法基础(三)流程控制

一、数据类型的转换

1、自动转换:在赋值运算中,占字节数大的类型会自动向字节小的类型转换

double d1 = 3.14;

int t1 = d1;

2、强制类型转换:当将宽度大的数据赋给宽度小的变量时,需要强制转换。会损失数据的精度(不会四舍五入)

(数据类型名)表达式;

二、流程控制:程序语句的执行方式

1、顺序结构:按语句出现的先后顺序执行

2、选择结构:根据条件选择执行部分语句

(1)由if 或 if--else构成的选择结构

A、if(条件表达式){

语句1;

}

执行过程:先运算“条件表达式”,若结果为真,执行“语句1”,若“条件表达式”结果为假,则跳出if结构,执行其它语句

流程图的图例:

菱形:表示条件判断

矩形:表示语句

箭头:表示执行方向

B、if---else构成的条件结构

if(条件表达式){

语句1;

}else{

语句2;

}

强调:a、else不能单独使用,必须和if结合起来使用

b、"{ }"表示控制范围,若 if 或 else只控制一条语句,则可以省略"{ }"

C、在if子句中嵌套if—else

if(条件表达式1){

if(条件表达式2){

语句1;

}else{

语句2;

}

}else{

语句3;

}

D、在else子句中嵌套if—else

if(条件表达式1){

语句1部分;

}else if(条件表达式2){

语句2部分;

}else if(条件表达式3){

语句3部分;

}else if(条件表达式n){

语句n部分;

}else{

语句n+1部分;

}

(2)由switch--case --break;构成的选择结构

switch(表达式){

case 常量1:语句1;break;

case 常量2:语句2;break;

case 常量3:语句3;break;

case 常量4:语句4;break;

........

case 常量n:语句n;break;

default:

语句n+1;

}

强调(语法):

a、switch后的"表达式"的运算结果只能是字符型或整型

b、case后常量的类型必须和switch后的"表达式"的运算结果的类型一致

c、default不是必须的,它的位置在switch中是任意的,通常将它放在 所有的case之后

d、"break;"语句的作用是跳出switch结构,若没有该语句,则实现不了选择的功能

执行过程:

第一步:先运算switch后的"表达式"

第二步:将switch后的"表达式"的运算结果与case后的常量进行比较,若相等则执行其后的语句;

第三步:若switch后的"表达式"的运算结果与所有case后的常量都不相等,若存在default,则执行其后的语句;若不存在default则跳出switch结构

(3)由条件表达式构成的选择结构

表达式1 ? 表达式2 : 表达式3

Java04-Java语法基础(三)流程控制的更多相关文章

  1. JAVA入门基础及流程控制

    JAVA入门基础及流程控制 数据类型 位 存储单位 eg:0001 0011 八位 字节 byte 处理数据单位 一字节等于八位 eg:1b=0011 0001 类变量: static int num ...

  2. Java入门教程三(流程控制)

    概述 程序有 3 种结构:顺序结构.选择结构和循环结构.分别为:if elseswitch case,while与do while,for, foreach,return,break ,continu ...

  3. Java基础-程序流程控制第一弹(分支结构/选择结构)

    Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...

  4. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  5. Go语言基础之流程控制

    Go语言基础之流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用额流程控制有if和for,而switch和goto主要是为了简化代 ...

  6. python语法入门之流程控制

    python语法入门之流程控制 流程控制是指控制流程,具体指控制程序执行的流程. 流程控制分为三种: 1.顺序结构 程序从上而下的正常执行(正常执行的代码就是顺序结构) 2.分支结构 赋予程序人的思维 ...

  7. Swift中文教程(三)--流程控制

    原文:Swift中文教程(三)--流程控制 Swift用if和switch编写条件控制语句,用for-in,for,while和do-while编写循环.条件控制语句和循环语句中,小括号是可选的,但花 ...

  8. Java语法基础(1)

    Java语法基础(1) 1.      Java是一门跨平台(也就是跨操作系统)语言,其跨平台的本质是借助java虚拟机 (也就是JVM(java virtual mechinal))进行跨平台使用. ...

  9. Ruby语法基础(三)

    Ruby语法基础(三) ​ 在前面快速入之后,这次加深对基本概念的理解. 字符串 ​ Ruby字符串可以分为单引号字符串和双引号字符串,单引号字符串效率更高,但双引号的支持转义和运行 puts '单引 ...

  10. GO语言学习——Go语言基础之流程控制一

    Go语言基础之流程控制 if else(分支结构) package main import "fmt" // if条件判断 func main(){ // age := 19 // ...

随机推荐

  1. 用Hadoop AVRO进行大量小文件的处理(转)

    使用 使用使用 使用 HDFS 保存大量小文件的缺点:1.Hadoop NameNode 在内存中保存所有文件的“元信息”数据.据统计,每一个文件需要消耗 NameNode600 字节内存.如果需要保 ...

  2. Jmeter的安装与使用

    安装Jmeter之前需要先配置Java环境   当配置完Jmeter运行的环境之后,就可以开始安装Jmeter了. 为什么既要告诉各位"在Linux系统内安装Jmeter",又要告诉各位"在Windo ...

  3. FlashDevelop 发布SWC

    环境配置: 1.安装32位Java,经测试可用的 链接:http://pan.baidu.com/s/1i4CraXR 密码:xuud 2.ant,链接:http://pan.baidu.com/s/ ...

  4. [JS]如何理解JS中的类和对象

    -------------------------------------------------------------------------------------------- 变量:自由的 ...

  5. 使用jQuery+huandlebars遍历展示对象中的数组

    兼容ie8(很实用,复制过来,仅供技术参考,更详细内容请看源地址:http://www.cnblogs.com/iyangyuan/archive/2013/12/12/3471227.html) & ...

  6. How to remove live visual tree?

    How to remove live visual tree? How to不显示实时可视化树 Remove the "Go to live visual tree" / &quo ...

  7. 学JS的心路历程-Promise(三)

    今天我们来说then一些特殊情况以及Promise.all()与Promise.race(). 我们都知道函式作为参数传入时,可以参照的方式传入,也能传入时执行拿回传值作使用: function us ...

  8. vue 安装sass扩展

    1.创建一个基于 webpack 模板的新项目 $ vue init webpack myvue 1 2.在当前目录下,安装依赖 $ cd myvue $ npm install 1 2 3.安装sa ...

  9. 微信小程序--分享报错(thirdScriptError Cannot read property 'from' of undefined;at pages/index/index page onShareAppMessage function TypeError: Cannot read property 'from' of undefined)

    分享功能: onShareAppMessage: function (res) { if (res.from === 'button') { // 来自页面内转发按钮 console.log(res. ...

  10. mysql 和 Oracle 数据类型对照

    MySQL与Oracle两种数据库在工作中,都是用的比较多的数据库,由于MySQL与Oracle在数据类型上有部分差异,在我们迁移数据库时,会遇上一定的麻烦,下面介绍MySQL与Oracle数据库数据 ...