java实型常量用十六进制表示_Java语言02(数据类型运算符).ppt

1bc5148b59e6a617d39058cfa22d1529.gifJava语言02(数据类型运算符).ppt

数据类型和流程控制 教学基本要求 熟悉Java语言的基本数据类型理解Java基本数据类型的转换方式学会Java运算符的使用理解运算符的优先级 Java数据类型 在Java语言中 主要有两种类型的数据 基本类型和引用类型 相应地 也就有了两种类型的变量 基本数据类型 基本数据类型是Java语言中预定义的 长度固定的 不能再分的类型 数据类型的名字被当作关键字保留 与其他大数的程序设计语言所不同的是 由于Java程序跨平台运行 所以Java的数据类型不依赖于具体计算机系统 Java的基本数据类型 常量 常量是在程序运行中不变的量 是一个简单的值的标识符或名字 它们直接在Java代码中指定 Java支持3种类型的常量 数值常量布尔常量字符常量 1 数值常量 Java支持2种数值常量 常数常量和实数常量 1 整型常量 整型常量是最常用的常量 包括byte short int long4种 它们都可以采用十进制 八进制 十六进制表示 其中byte short和int的表示方法相同 而长整型必须数的后面加字母L或l 整型常量在用十六进制表示时用0 x开头 整型常量在用八进制表示时用0开头 2 实型常量 实型常量可分为双精度和浮点两种类型 浮点数后面必须用F或f加以说明 双精度数 后面的D可以省略 4 布尔常量 Java中的布尔常量属于boolean类型 它的值只能是true或false两种形式 与C C 中的逻辑值不同的是 它不能代表整数 同时它也不是字符串 不能被转换成字符串常量 3 字符常量 字符常量是由单引号括起来的单个字符 如 a 6 等 字符常量是号的常量 占2个字节 Java语言使用16位的Unicode字符集 Java语言使用转义符表示一些有着特殊意义的字符如 n t Unicode Unicode 统一码 万国码 单一码 是一种在计算机上使用的字符编码 它为每种语言中的每个字符设定了统一并且唯一的二进制编码 以满足跨语言 跨平台进行文本转换 处理的要求 1990年开始研发 1994年正式公布 随着计算机工作能力的增强 Unicode也在面世以来的十多年里得到普及 Java转义符 变量 变量为我们提供了一种访问内存中数据的一方法 1 变量的命名 变量必须先定义后使用 变量的定义需要指出变量的类型 名称 还可以为其赋初值 初始化 一般格式为 类型变量名 初始值 例如 doubledi 0 34 可以在一个语句中声明多个变量 每个都具有相同的类型 各变量名之间用逗号分开 例如 intlength width 变量命名注意事项 变量名必须是一个合法的标识符 一个标识符是以字母或下划线或 符号开头的一串Unicode字符 中间不能包括空格 变量名必须不是一个关键字 布尔型字符或null Java对变量名区分大小写 变量名必须在作用域中是惟一的 数据类型的转换 数据类型转换是将一种类型的数据转变为另一种类型的数据 当表达式中的数据类型不一致时 就需要进行数据类型转换 类型转换的方法有两种 隐式类型转换和类型转换 当一个容量小的类型转化为一个容量大的类型时 编译器会常常自动完成类型转换的工作 被称为隐式类型转换 当把一个容量较大的数据类型向一个容量较小的数据类型转换时 为了避免信息的丢失 编译不会自动完成这类转换 而必须由程序员使用显式类型转换 其格式为 类型 表达式 数据类型转换的示例publicclassTestConvert publicstaticvoidmain String args inti 200 longj 8L j i i int j 运算符 用于对数据进行计算和处理 或改变特定对象的值 按操作数的数目来分类 一元运算符二元运算符三元运算符 按对数据的操作结果分类 算术运算符关系运算符逻辑运算位运算符 1 算术运算符 例2 2 算术运算的使用示例 publicclassArithmaticOp publicstaticvoidmain Stringargs inta 5 4 intb a 2 intc b 4 intd b c intf e 4 doubleg 18 4 doubleh g 4 h 2 4 inti 3 intj i intk i System out println a a System out println b b System out println c c System out println d d System out println e e System out println f f System out println g g System out println h h System out println i i System out println j j System out println k k 算术赋值运算符 Java也用一种简写形式的运算符 在进行算术运算的同时进行赋值操作 被称为算术赋值运算符 算术赋值运算符示例publicclassTestOp publicstaticvoidmain String args intx 3 y 4 x 7 y System out println x x 7 y System out println x 递增 递减运算符 Java提供了两快捷运算方式是递增运算符 和递减运算符 对于 和 运算符而言 都有两个版本可供选用 通常将其称为前缀版和后缀版 前者是先进行本运算符运算 将自身值修改之后 再参与表达式中的运算 而后者是参与完所在表达式运算后 再将自身值修改 递增运算符和递减运算符的使用示例publicclassAutoInc publicstaticvoidmain Stringargs inti 1 System out println i i System out println i i System out println i i System out println i i System out println i i System out println i i System out println i i 关系运算符 关系运算符用于测试两个操作数之间的关系 形成关系表达式 关系表达式将返回一个布尔值 它们多用在控制结构的判断条件中 Java的关系运算符 关系运算符的使用示例 例 2 4 关系运算符的使用示例publicclassRelationalOp publicstaticvoidmain Stringargs floata 10 0f doubleb 10 0 if a b System out println a和b相等 else System out println a和b不相等 逻辑运算符 逻辑运算符用来进行逻辑运算 Java逻辑运算符 短路的示例publicclassShortCircuit staticbooleantest1 System out println test1 returntrue staticbooleantest2 System out println test2 returnfalse staticbooleantest3 System out println test3 returntrue publicstaticvoidmain String args if test1 位运算符 类似于C语言 Java也支持位运算 Java语言中的位运算总体来说分为两 按位运算和移位运算 1 按位运算符 按位运算符允许操作两个整型数据中对应的单个的二进制位 按位运算会对两个自变量中对应的位执行布尔运算 并最终生成一个结果 Java中有4种按位操作符 它们是 按位与 按位或 按位非 按位异或 Java的位运算符 按位运算符的运算方法 若两个输入位都是 1 则 按位与 运算符在输出位上生成一个1 否则生成0 依此类推 按位运算示例publicclassShowBits publicstaticvoidmain String args byteb1 2 b2 13 if 2 b1 几点说明 按位运算符可与等号联合使用 以便合并运算及赋值 当操作数为布尔类型时 按位运算与逻辑运算有相同的效果 但这时不能进行按位 非 的操作按位运算在连续使用时没有 短路 的特征 2 移位运算 移位运算符面向的运算对象也是二进制的 位 用来处理整型数据 左移位运算符 能将运算符的左边运算对象向右移动右侧运算符的指位数 若值为正在最高位插0 若值为负在最高位插1 无符号右移运算符 右移运算符使用 符号扩展 无符号右移运算符 使用了 零扩展 无论正负 都在最位插入0 这一运算符是C C 所没有的 移位运算示例publicclassURShift publicstaticvoidmain String args inti 4 i i 1 System out println i 几点说明 char byte或char类型的数据进行移位处理时 系统会自动将它们转换成int类型 int和long类型进行移位后数据类型仍然保持不变 移位运算也可与赋值符号组合使用 形成移位赋值运算符 移位运算示例publicclassURShift publicstaticvoidmain String args inti 4 i 1 System out println i 其它运算符 1 赋值运算符 赋值是用等号运算符 进行的 它的意思是 取得右边的值 把它复制到左边 右边的值可以是任何常数 变量或者表达式 左边必须是一个明确的 以命名的变量 赋值运算符示例classNumber inti publicclassAssignment publicstaticvoidmain String args Numbern1 newNumber Numbern2 newNumber n1 i 9 n2 i 47 System out println 1 n1 i n1 i n2 i n2 i n1 n2 System out println 2 n1 i n1 i n2 i n2 i n1 i 55 System out println 3 n1 i n1 i n2 i n2 i 2 三元运算符 三元运算符 可以用来代替if else结构 但它最终会生成一个值 表达式为 布尔表达式 表达式1 表达达2若布尔表达式为真 就计算表达式1 否则计算表达式2 三元运算符示例publicclassternary publicstaticvoidmain String args inti 15 System out println i 10 i小于10 i不小于10 3 instanceof运算符 用于判断某个对象是不是属于某一个特定类 在运算符左侧的对象是右侧类的实例时 它将返回true instanceof运算符示例publicclassInstanceofDemo publicstaticvoidmain String args InstanceofDemot newInstanceofDemo if tinstanceofInstanceofDemo System out println t是InstanceofDemo对象 else System out println t不是InstanceofDemo对象 运算符的优先级 表达式是按照各个运算符的优先级从左到右运行的 Java中运算的优先级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值