运算符&和|思考:如果x的初值为1,那么下列表达式执行完后x的值是多少? (1>x)&(1>x++) (1 >x)&&(1>x++) (1==x)|(1>x++) (1==x)||(1>x++ )位运算对整数的二进制位进行逻辑运算运算符 名称 描述 & 与 按位与 | 或 按位或 ^ 异或 按位异或~非按位取 反位运算比如:15&315的二进制:00000000000011113的二进制:000000000 0000011结果:0000000000000011思考:15|315^3~15B itOperator.java移位运算<<左移将二进制位向左移,低位补0例如:5<<2等价于5乘以2的 2次方>>右移将二进制位向右移,正数补0,负数补1例如:5>>2等价于5除以2的2次方>>>无符号右 移将二进制位向右移,高位补0BitChange.java条件运算符Op1?Op2:Op3Op1为布尔型, 当Op1为true,表达式结果为Op2的值,否则为Op3的值例如: 2>1?3:4的值是3 1>2?3:4的值是4字符串连接运算符+可以实现字符串的连接基本格式:op1+op2 比如“welcome”+“tojava”“x的值是”+x练习每个问题使用一条Java语句实现:声明in t型变量sum和x将变量x赋值为1将变量sum赋值为0将变量x加到变量sum上,并将结果赋给sum打印“Thesumi s:”,后面紧跟变量sum的值。将以上语句组成一个Java程序。运算符的优先级类型转换++,--(前置)!(非) ,/,%+,-<,<=,>,>===,!=&(无条件与)^(异或)|(无条件或)&&||=,+= ,-=,=,/=,%=最低优先级最高优先级编程风格和文档适当的注释命名习惯适当的缩进和空白块的对齐方式编 程风格和文档适当的注释 在程序开头写摘要,说明程序的目的和主要特点,解释所用的重要数据结构和独特技术。在长程序中还要加上注释, 介绍每一个主要步骤并解释难懂之处。注释要写的简明,不要挤满程序而降低可读性。编程风格和文档命名习惯对变量和方法来说,常用小写 。如果名字包含几个词,把它们连成一个,第一个词的字母小写而后面的每个单词的首字母大写。对类来说,每个单词的首字母大写。常量中的 所有字母都大写,两个单词间要用下划线连接。 编程风格和文档适当的缩进和空白 一致的缩进风格会使程序清晰易懂。缩进用于描述程 序中组件和语句间的结构关系。 使用空行把代码分段,以使程序更容易阅读。编程风格和文档块的对齐方式 块是由花括弧围成的一组 语句,块的写法有多种方式,如:次行风格和行尾风格。第二章基本语法第一部分基本符号学习目标掌握Java语言的基本符号。 掌握基本数据类型。掌握运算符。掌握程序基本控制流程。Java语言的基本符号数字常量整数:100,31,-100(以0开 头表示8进制,以0x开头表示16进制)小数:0.5字符编码使用16位的Unicode编码,能表示所有自然语言字符Java 语言的基本符号字符常量用单引号括起来的单个字符,比如:‘A’,‘2’,也可以是‘中’等非英文字符字符串常量用双引号括起来的 字符序列,比如:“欢迎”布尔常量:只有两个值:true和falseJava语言的基本符号转义字符退格键 \b \u0008Tab键 \t \u0009换行符 \n \u 000a回车键 \r \u000d斜杠 \\ \u005c单引号 \’ \u0027双引号 \” \u0022Java语言的基本符号保留字系统预先定义的、用于特殊用途的符号。比如:public、class运算符 用于特定运算的符号。比如:+、-分隔符:,;()等Java语言的基本符号注释单行注释 ://注释内容多行注释/注释内容注释内容/文档注释/…/标识符的命名规则由字母、数字、下 划线_、美元符号$组成首字母不能是数字不能是保留字(50个)区分大小写标识符名称最好有意义变量变量作用:用于 存储数据——输入、输出和中间数据。声明变量:数据类型变量名;注意:变量在使用前必须声明变量声明例如: intx;doubleradius;chara;变量声明变量通常有初值,可以 在一步中说明变量并对其初始化,例如:intx=1;doubled=1.4;基本数据类型Java中共三种基本数据 类型:数值型字符型布尔型数值数据类型Java有六种数值类型:四种整型和两种浮点数。 类型存储大小byte8位 有符号数short16位有符号数int32位有符号数long64位有符号数float32位double64位 数值字面量字面量是在程序中直接出现的基本类型的数据值。inti=34;longl=1000000l;float f=100.2f;或floatf=100.2F;doubled=100.2d;或doubled=100.2D ;注意:浮点型字面量默认为double型。字符数据类型字符数据类型char用于表示单个字符。如:charc=''A''; charc=''4'';Charc=98;Charc=‘\\''布尔数据类型布尔数据类型来自布尔代数,它 的值域包括两个值:真(true)和假(false)。例如: booleanlightsOn=true; boolea nlightsOn=false;赋值运算符进行变量说明后,可以用赋值语句给它赋一个值,赋值语句语法如下: va riable=value; variable=expression;注意:在赋置语句中,左边变量的数据类型必须与右边 值的数据类型相容。赋值语句例如:intx=1;doubleradius=1.0;c hara=''A'';x=x+5(3/2);数值类型转换当进行数值类型运算时,如果需要,Jav a自动把精度较低的类型转换成另一个精度较高的类型。例如longa=10;floatf=a;doubl ed=f;数值类型转换Java不能把高精度类型的值自动转换成低精度类型的值,如果需要,必须进行强制类型转换。例如: intx=1.0;(错误)intx=(int)1.0;(正确)floatf=1.0;(是否正确?)类型 转换精度由高到底排序:doublefloatlongintshortbyte算术运算符算术运算符包括:+,- ,,/和%。整数除法的结果是整数,如5/2=2而不是2.5。运算符%得出除法的余数,如5%2=1。例:Math ematicsOperatorTest.java练习一、计算半径为5的圆的面积,并将结果打印到屏幕上。(参见指导书2.2.1 )二、编写程序验证以下语句是否正确:1、byteb=200;2、intx=5/2.0;数值类型转换Ja va中当两个类型不同的数值进行算术运算时,也会进行类型转换。例如:TypeConvert.java转换规则:取组成表达式的两 个数值中精度最大的类型作为表达式结果类型。结果类型最小精度为int。复合赋值运算符运算符 例 等价于+= i+=8 i =i+8-= f-=8.0 f=f-8.0= i=8 i=i8/= i/=8 i=i/8%= i%=8 i=i%8CompoundOperator.java增量运算符和减量运算符前置增量/减量运 算符:变量先加1或减1,再参与表达式中的运算。++x或者--x后置增量/减量运算符:变量先参与表达式的运算,再加 1或减1。x++或者x—增量运算符和减量运算符x=1;y =x++;y=++x;y=x--;y=--x;AddOne.java比较 运算符运算符 名称 例 结果 < 小于 1<2 true <= 小于等于 1<=2 true > 大于 1 >2 false >= 大于等于 1>=2 false == 等于 1==2 false != 不等于 1!=2 trueCompareOperator.java逻辑运算符运算符 名称 描述 ! 非 逻辑否定,取反 && 与 逻辑与,并且 || 或 逻辑或,或者 ^ 异或 逻辑异或,排同 LogicOperator.java运算符&和|Java也提供&和|运算符。运算符&和|的两个运算对象都要计算。&又称为无条件与运算符,|称为无条件或运算符。使用&和|运算符可以保证不管左边的操作数是true还是false,总要计算右边操作数。 |
|