版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计项目教程本章学习目标:本章主要学习Java语言中的基本数据类型、运算符与表达式●
掌握Java中的字符集、分隔符、标识符、关键字●
掌握变量和常量的定义和初始化●
掌握基本数据类型●
掌握Java中数据类型的转换、运算符和表达式项目2数据类型与运算符任务1part了解字符
字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。字符集是多个字符的集合,不同的字符集所包含的字符个数也不同Unicode支持UTF-8、UTF-16和UTF-32这三种字符编码方案,这三种方案的区别如表2-1所示。1.1字符集Java中使用多种字符作为分隔符,用于辅助程序编写、阅读和理解。这些分隔符可以分为两类:
●空白符:没有确定意义,但帮助编译器正确理解源程序,包括空格、回车、换行和制表符(Tab);
●普通分隔符:拥有确定含义,常用的普通分隔符如表2-2所示。1.2分隔符
需要注意的是:任意两个相邻的标识符之间至少有一个分隔符,便于编译程序理解;空白符的数量多少没有区别,使用一个和多个空白符实现相同的分隔作用;分隔符不能相互替换,比如该用逗号的地方不能使用空白符。
在各种编程语言中,通常要为程序中处理的各种变量、常量、方法、对象和类等起个名字作为标记,以便通过名字进行访问,这些名字统称标识符。Java中的标识符由字母、数字、下划线或美元符组成,且必须以字母、下划线(_)或美元符($)开头。Java中标识符的命名规则如下:
●可以包含数字,但不能以数字开头;
●除下划线“_”和“$”符以外,不包含任何其他特殊字符,如空格;
●区分大小写,例如“abc”和“ABC”是两个不同的标识符;
●不能使用Java关键字。
●标识符可有任意长度。1.3标识符以下是合法标识符的示例:varName_varNamevar_Name$varName_9Name以下是非法标识符的示例:VarName//包含空格9varName//以数字开头a+b//加号“+”不是字母和数字,属于特殊字符,不是Java标识符组成元素
关键字又叫保留字,是编程语言中事先定义的、有特别意义的标识符。关键字对编译器具有特殊的意义,用于表示一种数据类型或程序的结构等,关键字不能用于变量名、方法名、类名以及包名。Java中常用的关键字如表2-3所示。1.4关键字任务2part定义变量和常量
变量是数据的基本存储形式,因Java是一种强类型的语言,所以每个变量都必须先声明后再使用。变量的定义包括变量类型和变量名,其定义的基本格式如下:
数据类型变量名=初始值;
例如:定义整型变量inta=1;//声明变量并赋初始值
其中,int是整型数据类型;a是变量名称;=是赋值运算符;1是赋给变量的初始值。
变量的声明与赋值也可以分开,
例如:inta;//声明变量a=1;//给变量赋值
声明变量时,可以几个同一数据类型的变量同时声明,变量之间使用逗号“,”隔开,
例如:inti,j,k;2.1变量变量
常量是指一旦赋值之后其值不能再改变的变量。在Java语言中,使用final关键字来定义常量,其语法格式如下:final数据类型变量名=初始值;
例如:定义常量finaldoublePI=3.1416;//声明了一个double类型的常量,初始化值为3.1416finalbooleanIS_MAN=true;//声明了一个boolean类型的常量,初始化值为true
需要注意的是:在开发过程中常量名习惯采用全部大写字母,如果名称中含有多个单词,则单词之间以“_”分隔。此外常量在定义时,需要对常量进行初始化,初始化后,在应用程序中就无法再对该常量赋值。2.2常量常量任务3part掌握数据类型Java的基本数据类型主要包括如下四类:●整数类型:byte、short、int、long●浮点类型:float、double●字符类型:char●布尔类型:boolean3.1基本数据类型基本数据类型Java各种基本类型的大小和取值范围如表2-4所示。1.整型类型整数类型根据大小分为byte(字节型)、short(短整型)、int(整型)和long(长整型)四种,其中int是最常用的整数类型,
Java中整数值有4种表示方式:3.1基本数据类型●二进制:每个数据位上的值是0或1,
二进制的整数以“0b”或“0B”开头。●八进制:每个数据位上的值是0,1,2,3,4,5,6,7,其实八进制是由3位二进制数组成的,程序中八进制的整数以“0”开头。●十进制:每个数据位上的值是0,1,2,3,4,5,6,7,8,9,
数值默认为十进制。●十六进制:每个数据位上的值是0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,与八进制类似,十六进制是由4位二进制数组成的,程序中十六进制的整数以“0x”或“0X”开头。2.浮点类型
浮点数据类型有单精度(float)和双精度(double)两种,主要用来存储小数数值,也可以用来存储范围更大的整数。
单精度浮点型变量使用关键字float来声明,常量后面必须要有后缀f或F。
例如:声明单精度浮点型变量floatheight=1.78f;//声明变量height为单精度浮点型,并赋初始值为1.78floatweight=56.8F;//声明变量weight为单精度浮点型,并赋初始值为56.8
双精度浮点型变量使用关键字double来声明,常量后面可以有后缀d或D,也可以省略,浮点类型默认为double型。
例如:声明双精度浮点型变量doublea=1.24d;doubleb=4.87D;doublec=3.14;3.1基本数据类型3.字符型Java语言中字符型char是采用16位的Unicode字符集作为编码方式,因此支持世界上各种语言的字符。char通常用于表示单个字符,字符值必须使用单引号(’)括起来。
例如:char='A';//声明变量c为字符型,并赋初值为'A'字符型char的值有以下三种表示形式:●通过单个字符来指定字符型值,例如:'A'、'8'、'Z'等;●通过转义字符来表示特殊字符型值,例如:'\n'、'\t'等;●直接使用Unicode值来表示字符型值,格式是‘\uXXXX’,其中XXXX代表一个十六进制的整数,例如:’\u00FF’、’\u0056’等。3.1基本数据类型例如:使用转义字符赋值chara='\'';//变量a表示一个单引号'charb='\\';//变量b表示一个反斜杠\4.布尔类型
布尔类型又称逻辑类型,使用关键字boolean来声明,只有true和false两种值。布尔类型的默认值是false,即如果定义一个布尔变量但没有赋初始值,默认的布尔变量值是false。布尔类型通常用于逻辑判断,尤其多用在程序的流程控制中。
例如:声明一个boolean类型变量booleanmale=true;//声明变量male为布尔类型,并赋初始值为true3.1基本数据类型3.2引用数据类型
引用类型变量中的值是指向内存“堆”中的指针,即该变量所表示数据的地址。Java语
言中通常有5种引用类型:
●数组:具有相同数据类型的变量的集合。
●类(class):变量和方法的集合。
●接口(interface):一系列方法的声明,方法特征的集合。
●枚举(enum):一种独特的值类型,用于声明一组命名的常数。
●空类型(nulltype):空引用,即值为null的类型。
3.3数据类型转换Java语言提供7个基本数据类型间的相互转换,转换的方式有两种:自动类型转换和强制类型转换。1.自动类型转换
自动类型转换是将某种基本类型变量的值直接赋值给另一种基本类型变量。当把一个数值范围小的变量直接赋值给一个数值范围大的变量时,系统将进行自动类型转换,否则就需要强制类型转换。Java语言中7个基本数据类型间的自动类型转换如图2.1所示。在图2.1中,顺着箭头方向可以进行自动类型转换。3.3数据类型转换2.强制类型转换
当把一个数值范围大的变量赋值给一个数值范围小的变量时,即沿图2.1中箭头反方向赋值时,则必须使用强制类型转换。
强制类型转换的基本格式如下:
数据类型变量1=(数据类型)变量2;
例如:inta=56;charc=(char)a;//把整型变量a强制类型转换为字符型任务4part实现数据运算功能
运算符也称为操作符,是一种特殊的符号,用来将一个或多个操作数连接成执行性语句,以实现特定功能。Java中的运算符按照操作数的个数可以分为三大类型:
●一元运算符:只操作一个操作数;
●二元运算符:操作两个操作数;
●三元运算符:操作三个操作数。运算符本节概述Java中的运算符按操作数分类和功能分类如表2-6所示。4.1自增、自减运算符++是自增运算符,将操作数在原来的基础上加1,--是自减运算符,将操作数在原来的基础上减1。使用自增、自减运算符时需要注意以下两点:
●自增、自减运算符只能操作单个数值型的变量(整型、浮点型都行),不能操作常量或表达式;
●自增、自减运算符可以放在操作数的前面(前缀自增自减),也可以放在操作数后面(后缀自增自减)。
前缀自增自减的特点是先把操作数自增或自减1后,再放入表达式中运算,后缀自增自减的特点是先使用原来的值,当表达式运算结束后再将操作数自增或自减1。自增、自减运算符4.2算术运算符
算术运算符用于执行基本的数学运算,包括加(+)、减(-)、乘(*)、除(/)以及取余(%)运算符,如表2-7所示。算术运算符
需要注意的是:如果/和%运算符的两个操作数都是整数类型,则除数不能是0,否则引发除数为0异常。但如果两个操作数有一个是浮点数,或者两个都是浮点数,此时允许除数是0或0.0,任何数除0得到的结果是正无穷大(Infinity)或负无穷大(-Infinity),任何数对0取余得到的结果是非数:NaN。4.3关系运算符
关系运算符用于判断两个操作数的大小,其运算结果是一个布尔类型值(true或false)。Java语言中的关系运算符如表2-8所示。关系运算符4.4逻辑运算符
逻辑运算符又称布尔运算符,用于进行逻辑运算。逻辑运算符包括&&(逻辑与或短路逻辑与)、||(逻辑或或短路逻辑或)、!(逻辑非)、&(非短路逻辑与)和|(非短路逻辑或)。Java语言中的逻辑运算符如表2-9所示。4.5位运算符Java语言中的位运算符总体来说分为两类:按位运算符和移位运算符。Java语言中有4种按位运算符,它们是按位与(&)、按位或(|)、按位非(~)和按位异或(^);移位运算符有3种,分别是右移位(>>)、左移位(<<)和无符号右移位(>>>)。Java语言中的位运算符功能描述如表2-11所示。4.6赋值运算符
赋值运算符用于为变量指定变量值,Java中使用“=”作为赋值运算符。通常使用“=”可以直接将一个值赋给变量。例如:inta=3;floatb=3.14f;
除此以外,也可以使用“=”将一个变量值或表达式的值赋给另一个变量。例如:inta=3;floatb=a;doubled=b+3;
赋值运算符可与算术运算符、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030正畸牙齿和口腔护理行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030欧洲精密仪器制造业数字化转型路径与品牌建设方案报告
- 2025-2030欧洲电力电子元件市场供需现状及长期投资策略分析
- 2025-2030欧洲现代农业行业市场供需结构及发展潜力评估调研报告
- 2025-2030欧洲机器人产业市场竞争格局分析及投资发展趋势规划讨论纲
- 2025-2030欧洲智能机器人制造行业深层次研究及市场空间与投资计划报告
- 2025-2030欧洲智能家电核心芯片市场竞争格局技术发展投资评估规划研究报告
- 2025-2030欧洲智能交通系统行业市场现状分析投资前景及产业化规划研究
- 2025-2030欧洲护肤品品牌市场供需状况评估及投资机会研究与行业发展规划文献
- 2025-2030欧洲工业机器人行业分析需求评估投资规划布局研究文献
- (2025年)铁路行车组织培训考试题附答案
- 邀约来访活动策划方案(3篇)
- 2025年烟台理工学院马克思主义基本原理概论期末考试笔试真题汇编
- 2025年保险理赔流程操作规范手册
- 贵州省贵阳市2024-2025学年高一上学期期末监测物理试卷(含解析)
- 税收说理式执法课件
- 彩钢瓦屋面施工组织方案
- 路灯劳务施工方案(3篇)
- 2026届高考复习之鉴赏诗歌的语言 教学课件
- 七年级上册文言文虚词详解汇编
- 扬州市广陵区2025年网格员考试题库及答案
评论
0/150
提交评论