还剩41页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
表达式与语句欢迎来到关于表达式与语句的课程本次课件将深入探讨编程中两个基本概念表达式和语句我们将从表达式的定义、分类入手,逐步了解数值型、逻辑型和位运算表达式随后,我们将详细阐述语句的种类,包括赋值语句、条件语句和循环语句,以及它们在程序设计中的应用通过本次学习,您将掌握表达式和语句的构成、作用以及使用方法,为编写高效、清晰的代码奠定坚实基础表达式的概念定义作用表达式是由运算符和操作数组成的序列,用于计算并产生一表达式在程序中扮演着至关重要的角色,它们是计算和逻辑个值操作数可以是变量、常量、函数调用或其他表达式判断的基础通过表达式,我们可以执行各种算术运算、比表达式的核心在于通过计算得到结果,该结果的类型取决于较操作以及逻辑判断,从而实现程序的各种功能表达式的操作数和运算符的类型结果可以被赋值给变量,用于控制程序的流程,或者作为函数的参数传递表达式的分类数值型表达式1用于进行数值计算,包括算术运算、比较运算等例如2+
3、x5逻辑表达式2用于进行逻辑判断,结果为真或假例如x0y10位运算表达式3用于进行位运算,操作的是数据的二进制形式例如x0x0F其他表达式4赋值表达式、函数调用表达式等,根据具体编程语言而定数值型表达式算术运算比较运算赋值运算加、减、乘、除、取余等基本运算,用大于、小于、等于、不等于等,用于比将数值赋给变量,改变变量的值于处理数值数据较数值的大小关系算术运算加法+1将两个操作数相加例如a+b减法-2将两个操作数相减例如a-b乘法*3将两个操作数相乘例如a*b除法/4将两个操作数相除注意整数除法和浮点数除法的区别例如a/b取余%5返回两个操作数相除的余数例如a%b比较运算等于==判断两个操作数是否相等例如a==b不等于!=判断两个操作数是否不相等例如a!=b大于判断左侧操作数是否大于右侧操作数例如ab小于判断左侧操作数是否小于右侧操作数例如ab大于等于=判断左侧操作数是否大于等于右侧操作数例如a=b小于等于=判断左侧操作数是否小于等于右侧操作数例如a=b赋值运算简单赋值复合赋值=1将右侧表达式的值赋给左侧变量结合了算术运算和赋值操作例如2例如x=5x+=5等价于x=x+5递增和递减运算递增++将变量的值增加1分为前缀递增++x和后缀递增x++,区别在于返回1值不同递减--2将变量的值减少1分为前缀递减--x和后缀递减x--,区别在于返回值不同复合赋值运算+=1加法赋值例如x+=5等价于x=x+5-=2减法赋值例如x-=5等价于x=x-5*=3乘法赋值例如x*=5等价于x=x*5/=4除法赋值例如x/=5等价于x=x/5%=5取余赋值例如x%=5等价于x=x%5逻辑表达式逻辑表达式用于进行逻辑判断,结果为真(true)或假(false)它们通常由逻辑运算符和操作数组成逻辑表达式在程序中用于控制流程,例如在条件语句和循环语句中逻辑运算符与或非||!当所有操作数都为真时,结果才为真当至少一个操作数为真时,结果就为真对操作数取反如果操作数为真,结果例如a0b10例如a0||b10为假;如果操作数为假,结果为真例如!a0短路求值概念示例在逻辑表达式中,如果通过计算部分表达式的值已经可以确例如,在a0b10中,如果a0为假,那定整个表达式的结果,那么剩余的部分表达式将不再计算么无论b10的结果如何,整个表达式的结果都为假,因这种现象称为短路求值此b10将不再计算短路求值可以提高程序的效率,避免不必要的计算位运算概念特点12位运算是直接对整数的二进制位进行操作的运算位位运算的效率通常比算术运算高,因为它们直接操作运算符包括与、或、非、异或、左移和右移等位运二进制位,不需要进行复杂的计算但是,位运算的算通常用于处理底层数据,例如图像处理、网络编程可读性较差,不容易理解等位运算符与或异或|^按位与运算例如a按位或运算例如a按位异或运算例如b|b a^b非~按位取反运算例如~a按位运算与1将两个操作数的二进制位进行与运算只有当两个操作数的对应位都为1时,结果位才为1,否则为0或|2将两个操作数的二进制位进行或运算只要两个操作数的对应位中有一个为1,结果位就为1,否则为0异或^3将两个操作数的二进制位进行异或运算当两个操作数的对应位不同时,结果位为1,否则为0非~4将操作数的二进制位进行取反运算将0变为1,将1变为0位移运算左移将操作数的二进制位向左移动指定的位数左移相当于乘以2的幂例如a2表示将a左移2位,相当于a*4右移将操作数的二进制位向右移动指定的位数右移相当于除以2的幂例如a2表示将a右移2位,相当于a/4表达式的优先级优先级规则括号的作用不同的运算符具有不同的优先级1可以使用括号来改变运算符的优先优先级高的运算符先于优先级低的级括号内的表达式先于括号外的2运算符进行计算例如,乘法和除表达式进行计算法的优先级高于加法和减法表达式的结合性结合性规则当多个相同优先级的运算符出现在同一个表达式中时,需要根据运算符的1结合性来确定计算顺序结合性分为左结合性和右结合性示例例如,加法和减法是左结合性的,因此a-b+c相当于2a-b+c赋值运算符是右结合性的,因此a=b=c相当于a=b=c语句的概念定义1语句是程序执行的基本单元一个语句通常完成一个特定的操作,例如赋值、条件判断、循环等作用语句是构成程序的基本程序由一系列语句building block2组成,语句按照一定的顺序执行,从而实现程序的逻辑功能语句的分类赋值语句条件语句循环语句其他语句语句可以根据其功能进行分类常见的语句类型包括赋值语句、条件语句、循环语句、跳转语句、函数调用语句等不同类型的语句在程序中扮演着不同的角色,共同完成程序的逻辑功能赋值语句作用形式赋值语句用于将一个表达式的值赋给一个变量赋值语句是赋值语句通常采用变量=表达式;的形式其中,=是赋值程序中最常用的语句之一,用于改变变量的值,从而影响程运算符,用于将右侧表达式的值赋给左侧变量序的执行结果条件语句作用类型条件语句用于根据条件判断的结果来选择执行不同的代码块常见的条件语句包括if语句、if-else语句和switch语条件语句是程序中实现分支逻辑的重要手段,可以使程序根句这些语句可以根据不同的条件选择执行不同的代码块,据不同的情况执行不同的操作从而实现程序的灵活控制语句if形式作用12if条件{代码块;}如果条件为真,则执行代码块;否则,跳过代码块示例3if x0{System.out.printlnx ispositive;}语句if-else形式作用示例if条件{代码块如果条件为真,则执if x01;}else{代码行代码块1;否则,执{块2;}行代码块2System.out.printlnxis positive;}else{System.out.printlnxis non-positive;}嵌套语句if概念1嵌套if语句是指在一个if语句的代码块中包含另一个if语句嵌套if语句可以实现更复杂的条件判断逻辑示例2```java if x0{ifx10{System.out.printlnx isbetween0and10;}else{System.out.printlnx isgreaterthan10;}}else{System.out.printlnx isnon-positive;}```三元运算符形式作用示例条件表达式1:表达式2如果条件为真,则返回表达式1的值;否int max=aba:b;则,返回表达式的值三元运算符是2if-else语句的简化形式,可以使代码更加简洁语句switch作用形式根据表达式的值,选择执行对应的1表达式值```java switch{case1:代码块switch语句通常用于处理代码块值代码块1;break;case2:2;2多个分支的情况,可以使代码更加代码块break;...default:n;}```清晰易懂循环语句作用循环语句用于重复执行一段代码块,直到满足指定的条件为止循环语句1是程序中实现重复操作的重要手段,可以使程序更加高效类型常见的循环语句包括while循环、do-while循环和for2循环这些语句可以根据不同的条件和方式重复执行代码块,从而实现程序的各种循环逻辑循环while形式1while条件{代码块;}作用2如果条件为真,则重复执行代码块,直到条件为假为止while循环适用于循环次数不确定的情况示例3```java int i=0;while i10{System.out.printlni;i++;}```循环do-while循环体条件判断do-while循环与while循环类似,但是它保证循环体至少执行一次do-while循环先执行代码块,然后判断条件,如果条件为真,则重复执行代码块,直到条件为假为止循环for形式作用for初始化;条件;更新{代码块;}for循环提供了一种简洁的方式来控制循环的初始化、条件判断和更新for循环适用于循环次数确定的情况嵌套循环概念示例嵌套循环是指在一个循环语句的代码块中包含另一个循环语```java for inti=0;i10;i++{for intj=0;j10;j++句嵌套循环可以实现更复杂的循环逻辑,例如遍历二维数{System.out.print*;}System.out.println;}```组、打印图形等和语句break continue语句break1用于立即终止循环的执行,跳出循环体语句continue2用于跳过当前循环迭代的剩余代码,直接进入下一次循环迭代语句return作用示例return语句用于从函数中返回```java intaddint a,int b{returnreturn语句可以返回一个值,也a+b;}```可以不返回值(在void函数中)空语句形式1空语句是指只有一个分号;的语句空语句不执行任何操作,但是它可以用于某些特定的场合作用2例如,空语句可以用于创建一个空循环体forinti=0;i10;i++;虽然这个循环什么也不做,但是它可以用于延迟程序的执行函数调用作用函数调用是指执行一个已经定义的函数函数调用可以使程序更加模块化,提高代码的可重用性形式函数调用通常采用函数名参数列表;的形式其中,参数列表可以为空,也可以包含多个参数,参数之间用逗号分隔注释语句作用类型注释语句用于在代码中添加说明文1常见的注释语句包括单行注释和多字,帮助程序员理解代码的逻辑2行注释单行注释以//开头,多行注释语句不会被编译器执行,因此注释以/*开头,以*/结尾它们不会影响程序的运行结果变量声明语句作用变量声明语句用于声明一个变量的类型和名称变量声明语句必须在使用1变量之前进行,否则编译器会报错形式2变量声明语句通常采用类型变量名;的形式例如intx;声明了一个整型变量x数据类型转换作用1数据类型转换是指将一个数据从一种类型转换为另一种类型数据类型转换通常用于处理不同类型的数据之间的运算和赋值类型数据类型转换分为隐式类型转换和显式类型转换隐式类2型转换由编译器自动完成,显式类型转换需要程序员手动指定隐式类型转换隐式类型转换是指编译器自动完成的数据类型转换通常,编译器会将较小的数据类型转换为较大的数据类型,以避免数据丢失例如,将int类型转换为double类型显式类型转换作用形式显式类型转换是指程序员手动指定的数据类型转换显式类显式类型转换通常采用类型表达式的形式例如int型转换通常用于将较大的数据类型转换为较小的数据类型,x=int
3.14;将double类型的
3.14转换为int类型或者将一种类型转换为另一种不兼容的类型混合运算中的类型转换规则示例在混合运算中,如果存在多种数据类型,编译器会根据一定例如,在int x=5+
3.14;中,编译器会将5转换为的规则进行类型转换通常,编译器会将所有操作数转换为double类型,然后再与
3.14相加,结果为double类型的表达式中最大的数据类型,然后再进行计算
8.14最后,将
8.14截断为int类型的8,赋给变量x常量声明作用形式12常量声明用于声明一个常量,常量的值在程序运行期常量声明通常采用final类型常量名=值;的形式间不能被修改常量可以提高程序的可读性和可维护例如final doublePI=
3.1415926;声明了一个性,避免Magic Number的出现双精度浮点型常量PI,其值为
3.1415926。
个人认证
优秀文档
获得点赞 0