




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2 3基本类型 第2章Java语言基础 2 3 1整型数据 1 整型常量Java的整型常数有三种形式 十进制 十六进制和八进制 十进制整数以10为基数 用0 9这10个数字和正 负号组成 如123 456 0等 在Java中 十进制整数的第一位数字不能为0 整型数据2 十六进制整数以16为基数 用0 9的10个数字 字母A F 小写也可 代表10 15这些整数 和正 负号组成 十六进制整数必须以0X或0 x作为开头 如0 x123 0 xabc等 八进制整数以8为基数 用0 7的8个数字和正 负号组成 八进制整数必须用0开始 如0567 0123等 整型数据3 每一个整型常数默认为int类型 占有32位 即4个字节 的存储空间 整型常数所表示的范围为2 147 483 647 2 147 483 648 若要使用更大的数 可用64位 8字节 的长整型数 long类型 若把一个整数强制存为一个长整型数 可以在数字后面加字母l或L 2 3 2实型 浮点型 数据 1 实型常量有标准和科学计数法两种表现形式 1 标准形式 由数字和小数点组成 且必须有小数点 2 科学计数法形式 数字中带e或E 其中e或E前必须有数字 且e或E后面的数字 表示以10为底的乘幂部分 必须为整数 实数后面可带后缀F f或D d 分别表示单精度实数和双精度实数 2 3 3字符型数据 字符型char数据是由一对单引号括起来的单个字符 Java使用Unicode格式的16位字符集 而不仅仅为ASCII字符集 因此char类型的范围从0到65535 在Java语言中 以反斜杠 开头的多个字符表示一个转义字符 转义字符一般用于表示某些非图形 非可视 字符 2 3 4布尔型数据 布尔数据只有两个值 true和false 且都是保留字 表示 真 和 假 这两种状态 关系运算和逻辑运算返回布尔类型的值 布尔型变量用boolean定义 例如 booleanmouseOn true booleandone false 布尔型是一个独立的类型 Java中的布尔类型不能转换成数字 2 3 5字符串数据 字符串常量是用双引号括起来的零个或多个字符 包括转义字符 一个长字符串可以用 号分成几个短字符串 在Java语言中 每个字符串常量被作为字符串类String的对象来处理 字符串变量 在Java语言中 字符串变量是对象 是复合类型 有两种字符串变量类型 String类和StringBuffer类 String类是常量类 初始化后不能改变 StringBuffer类是字符串缓冲区 可以修改 例如 Stringstr1 newString Thisisastring Stringstr2 Thisisastring StringBufferstr3 newStringBuffer StringBufferstr4 newStringBuffer Thisisastring 2 3 6缺省初始值 在Java程序中 每个变量都对应一个值 不存在没有值的变量 若一个变量只声明而没有初始化 则使用它的缺省初值 对于数值数据 缺省数值为相应类型的零 字符的缺省初值为 u0000 布尔初值为false Object类型初值为null 2 4运算符 运算符的作用是与一定的运算数据组成表达式来完成相应的运算 对不同的数据类型 有着不同的运算符 对运算符 有运算对象 操作数 个数及类型 运算优先级 结合性等特性 运算符的优先级 结合性和求值顺序有明确的规定 2 4 1算术运算符 按操作数的多少可分为一元 单目 和二元 双目 两类 一元运算符一次对一个操作数进行操作 二元运算符一次对两个操作数进行操作 算术运算符的操作数类型是数值类型 一元运算符有 和 右结合性 二元运算符有 和 这些运算符并不改变操作数的值 而是返回一个必须赋给变量的值 二元算术运算符具有左结合性 2 4 2关系运算符 用于确定一个数据与另一个数据之间的关系 即进行关系运算 所谓关系运算是比较运算 将两个值进行比较 结果值为true false 布尔型 大于 大于或等于 小于或等于 不等于 和 等于 都是双目运算符 运算符 和 的运算优先级低于另外四个关系运算符 2 4 3布尔运算符 对布尔类型的数据 布尔常量 布尔变量 关系表达式和布尔表达式等 进行运算 结果也为布尔类型 布尔运算符的运算规则 1 布尔值取反 2 和 当两个运算对象的值都为true时 结果为true 其他情况均为false 3 和 当两个运算对象的值都为false时 结果为false 其他情况均为true 4 当两个运算对象的值不同时为true 相同时为false 注意 非简洁与 非简洁或运算时 运算符两边的表达式都先要运算执行 然后两表达式的结果再进行与 或运算 简洁与 简洁或运算时 若只运算左边表达式即可确定与 或结果时 则右边的表达式将不会被计算 2 4 4位运算符 用来对二进制位进行运算 运算操作数应是整数类型 结果也是整数类型 7种位运算符 它们是 按位取反 与运算 或运算 异或运算 算术右移 和 逻辑右移 其中前四种称为位逻辑运算符 后三种称为算术移位运算符 2 4 5赋值运算符 赋值运算符都是二元运算符 具有右结合性 1 简单赋值运算符 用来将一个数据赋给一个变量 在赋值运算符两侧的类型不一致的情况下 若左侧变量的数据类型的级别高 则右侧的数据被转换为与左侧相同的高级数据类型 然后赋给左侧变量 否则 需要使用强制类型转换运算符 2 复合赋值运算符 即在赋值符前加上其他运算符 复合赋值运算符是表达式的一种缩写 复合赋值运算符有11种 2 4 6条件运算符 条件运算符是一种三元运算符 格式 布尔表达式 表达式1 表达式2先计算布尔表达式的真假 若为真 则计算并返回表达式1 若为假 则计算并返回表达式2 例如 a b a b 将返回a和b中较大的那个数值 2 4 7字符串运算符 运算符 可以实现两个或多个字符串的连接 也可实现字符串与其他类对象的连接 在连接时 其他类对象会被转换成字符串 运算符 把两个字符串连接的结果放进第一个字符串里 当想把几项输出内容输出在同一行里时使用的就是 运算符 2 5常用Java数值计算方法 类Math中包含了一些数值常量 如E和PI 以及一些基本的数值计算方法 常用的数值方法有 abs 绝对值 sin 正弦值 cos 余弦值 tan 正切值 asin 反正弦值 acos 反余弦值 atan 反正切值 ceil 求不小于参数的最小整数 floor 求不大于参数的最大整数 pow a b 求a的b次方 random 产生0 0 1 0的伪随机数 sqrt 平方根 log 自然对数 max a b 求a b中的大者 min a b 求a b中的小者等 2 6表达式 表达式是由操作数和运算符按一定的语法形式组成的符号序列 每个表达式结果运算后都会产生一个确定的值 称为表达式的值 表达式的值是有类型的 该类型称为表达式类型 表达式类型由运算符和参与运算的数据的类型决定 可以是简单类型 也可以是复合类型 可按表达式值的类型将表达式分类 2 6 1类型转换 在一个表达式中可能有不同类型的数据进行混合运算 这是允许的 但在运算时 Java将不同类型的数据转换成相同类型 再进行运算 1 自动类型转换整型 实型和字符型数据可以进行混合运算 在运算中 不同类型的数据先转换成相同类型 然后再进行运算 转换从低级到高级 可混合运算数据类型从低到高排列如下 低 byte short char int long float double 高 2 强制类型转换 高级数据要转换为低级数据时 需进行强制类型转换 从一种类型转换到另一种类型可以使用下面的语句 inta charb b char a 加括号的char告诉编译器想把整型变成字符并把它放在b里 3 表达式求值中的自动类型提升 在表达式的求值过程中 运算中间值的精度有时会超出操作数的取值范围 如 bytex 30 y 50 z 100 inta x y z 在运算x y项时 结果1500已经超出了操作数byte类型的范围 为解决这类问题 Java语言在对表达式求值时 自动提升byte或short类型的数据为int类型的 自动提升规则 自动类型提升对数据的运算带来了方便 但也容易引起编译错误 例如 bytex 30 x x 编译错误 不能向byte变量赋int值 自动提升规则1 所有byte和short类型提升为int类型 若有一个操作数是long类型 则整个表达式提升为long类型 若有一个操作数是float类型 则整个表达式提升为float类型 若有double类型 则表达式值为double类型 2 6 2优先级 Java语言规定了表达式中出现各种运算符的时候 哪种运算符先进行运算 哪种运算符后进行运算的运算符运算顺序 称为运算符的优先级 它指明了同一表达式中多个运算符被执行的次序 同一级里的操作符具有相同的优先级 在表达式中 优先级高的运算符先进行运算 2 6 3结合性 结合性确定同级运算符的运算顺序 运算符有左结合性和右结合性两种 左结合性指的是从左向右使用运算符 右结合性是从右向左使用运算符 2 7包装类 wrapperclass 将基本类型包装成类 与基本类型对应的包装类有Byte Short Integer Long Character Float Double Boolean和Void 使用包装类的方法与其他类一样 定义对象的引用 用new运算符创建对象 用方法来对对象进行操作 格式 包装类对象名 new相应的包装类 值 2 8输入输出初步 2 8 1标准输入输出1 标准输出 1 print和println方法可以用System out println在程序中可以将常量 变量或表达式的值输出到屏幕 println方法可有0个或1个参数 若参数是0个 则输出一回车换行 光标移动到下一行行首 若有一个参数 该参数可以是char byte int boolean float double String char 字符数组 和Object 对象 类型的 各种类型的数据转换成相应的字符串类型输出 输出给定所有内容后 输出一个回车换行 1 标准输出 常用System out print进行输出 print方法需要一个参数来输出 可用的参数类型与println相同 输出参数的值后不输出回车换行 因此 若输出内容本身不包含控制光标的内容或未满行 System out print输出后 光标将停留在输出内容后 2 printf和format格式输出方法要控制输出数据的格式 可使用System out printf和类似的System out format方法 在方法的参数中对每一输出项 表达式 都可在一个格式控制字符串中用 开始的格式符进行格式控制 2 标准输入 1 read方法可以用System in read 从键盘输入整数值在0 255之间的byte值 int类型 若程序运行时需要从键盘输入其他类型的数据 则需要使用Java提供的输入 输出功能 不论需从键盘输入何种类型的数据 Java从键盘接收数据都是以字符串的形式进行 再根据实际数据的需要进行类型转换 应用本方法时要使用Java的异常处理机制 2 使用next方法 若使用Java提供java util scanner类中的各种next方法 可从键盘输入各种基本类型和字符串类型的数据 不论需从键盘输入何种类型的数据 Java从键盘接收数据都是以字符串的形式进行 next方法要根据输入数据的类型来选用 有nextByte nextInt nextShort nextLong nextFloat nextDouble nextBoolean和next 以空格和回车为结束标记的字符串输入 等适用于不同类型数据输入的方法 使用next方法进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中医骨伤科学考试题(含参考答案)
- 2025年粮油保管员考试试题附带答案解析
- 2025年新安全生产月试题题库(含参考答案)
- 2025年教师资格考试小学面试体育试题及解答附答案
- 2025年公务员考试题库库(答案+解析)
- 2025年注册会计师《会计》科目模拟试题解析及高频考点预测全附答案
- 2025年物流师职业资格考试模拟试卷:物流企业物流服务创新试题含答案
- 2025年民族学理论与实践课程考试试卷及答案
- 2025年公卫执业医师助理考试试题及答案
- 2025护士资格证考试营养支持原则试题及答案
- 火锅店引流截流回流方案
- 国庆中秋双节安全培训课件
- 2025年全国青少年全国禁毒知识竞赛试题及答案
- 云南学法减分题库及答案
- 幼儿园大班数学活动《4的分解与组合》课件
- 2025秋七年级开学新生家长会《启幕新篇章携手创辉煌》【课件】
- GJB3243A-2021电子元器件表面安装要求
- 2025年4月自考03450公共部门人力资源管理试题
- TCCEAS001-2022建设项目工程总承包计价规范
- 初中语文古诗词教学策略课件
- 视频安防监控技术交底
评论
0/150
提交评论