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. js函数的创建

    1.js 函数的创建有几种方式: 1.1  直接声明 1.2 创建匿名函数,然后赋值 1.3 声明函数,然后赋值给变量 1.4 使用1.3 得到的变量再赋值给变量 1.5 使用函数对象创建函数 < ...

  2. vue:在router里面给页面加title

    vue中给组件页面加页面标题:{ path: '/', name: 'index', component: disconnect, meta: { title: '首页' } }, { path: ' ...

  3. Packets 1037A(二进制数)

    分析:看这个数有多少位二进制数 #include<cstdio> int main() { int n; while(~scanf("%d",&n)) { ; ...

  4. 函数mmap()的使用

    函数mmap是linux的一个系统函数.如下: 函数原型:void *mmap(void *addr, size_t length, int prot, int flags,int fd, off_t ...

  5. ReactiveX 学习笔记(10)可连接的数据流

    Connectable Observable Operators 本文的主题为处理 Connectable Observable 的操作符. 这里的 Observable 实质上是可观察的数据流. R ...

  6. ReactiveX 学习笔记(9)工具类操作符

    Observable Utility Operators 本文的主题为处理 Observable 的实用工具类操作符. 这里的 Observable 实质上是可观察的数据流. RxJava操作符(六) ...

  7. Haskell语言学习笔记(77)Data.HashSet

    安装 unordered-containers $ cabal install unordered-containers Installed unordered-containers-0.2.9.0 ...

  8. C# winform进度条 (异步)

    进度条页面: http://www.cnblogs.com/Deckard/archive/2009/06/24/1510451.html //============================ ...

  9. JAVAWEB 一一 Hibernate(框架)

    实体类关联数据库字段,操作实体类,HQL语句对数据结构CRUD) 引入jar包 配置文件 hibernate.cfg.xml User.hbm.xml <?xml version="1 ...

  10. ORA-01704: 字符串文字太长 oracle

    .net连接oracle时,当流从文件读出来更新数据库时,会报"ORA-01704: 字符串文字太长"这样的错误. 原因:sql语句拼接而成. 解决:采用参数方法传值. strin ...