第2章、变量、数据类型和运算符_第1页
第2章、变量、数据类型和运算符_第2页
第2章、变量、数据类型和运算符_第3页
第2章、变量、数据类型和运算符_第4页
第2章、变量、数据类型和运算符_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第二章变量、数据类型和运算符变量、数据类型和运算符/n掌握变量的概念n会使用常用数据类型n会使用常用运算符n会进行数据类型转换学习目标学习目标变量15内存中的数据数据数据1515内存内存l应用程序要为每一项数据分配内存l需要多少内存l数据被存储在哪个通过变量,可以为内存通过变量,可以为内存中的位置提供一个有意中的位置提供一个有意义的名称义的名称变量是存储数据的一个基本单元变量是存储数据的一个基本单元变量n变量的定义变量的定义 变量是指在程序执行过程中,其值可以改变的量。在内存的数据区中,会为变量分配存储空间来存放变量的值,这个内存空间的地址对应着变量名称,所以在程序中可以通过变量名称来区分和

2、使用这些内存空间。n按变量声明的位置划分,变量的分类如下按变量声明的位置划分,变量的分类如下 成员变量:方法外部,类的内部定义的变量。 局部变量:方法或语句块内部定义的变量。n变量的声明和初始化变量的声明和初始化JAVA变量使用前必须首先声明成员(全局)变量创建后::系统会自动对其进行默认值初始化,可以不手动赋初值局部变量创建时:必须显式初始化(手动赋初值),不具备自动初始化的能力变量命名规则变量命名规则2-1n在Java语言中, 标识符是给类类、变量变量和方法方法等取的名称。n标识符的命名规则:由字母、数字、下划线、$符号组成,但不能以数字开头不能是关键字和保留字区分大小写标识符的长度没有限

3、制。中文的变量和字符也是合法的,但不推荐使用。变量命名规范:变量命名规范:简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的首字母大写。例如:首字母大写。例如:myScore /变量命名规则2-2n检查下面这些是否是合法的变量名principalcost_pricemarks_3$lastnamecity123ratediscount%zip codeCityint/变量的声明和赋值n使用变量的步骤:第一步:声明一个变量第二步:赋值第三步:使用变量数据类型数据类型 变量名变量名 = 数值;数值; 根据类型开辟

4、空间根据类型开辟空间 将数据存入空间将数据存入空间 取出数据使用取出数据使用 数据类型数据类型 变量名;变量名; 变量名变量名 = 数值;数值;int money = 1000;int money;money = 1000 ;Java数据类型nJava数据类型示意图:数据类型 基本(简单)数据类型 引用(复合)数据类型数值型类(class)接口(interface)数组整数类型(byte,short,int,long)浮点类型(float,double)字符型(char)布尔型(boolean)Java数据类型n整数类型: 包含以下4种:byte short int long 每一种类型都有各

5、自占用的内存空间和不同范围的表数范围如下:类型名大小(字节)范围byte1(8bit)-128127short2(16bit)-3276832767int4(32bit)-21474836482147483647long8(64bit)-92233720368547758089223372036854775807Java数据类型nJAVA语言中整型常量的三种表示形式: 十进制整数,如12, -314, 0。八进制整数,要求以0开头,如012 十六进制数,要求0 x或0X开头,如0 x12 JAVA语言中的整型常量默认为int型, 如: int i =3; 声明为标准的long型常量可以在其后加

6、 l 或 L , 如: long l = 3L;Java数据类型n浮点型 浮点类型用于表示有小数部分的数值。在Java中有两种浮点类型,如下表所示:类型名大小(字节)范围float4(32bit)-3.4E38 3.4E38double8(64bit)-1.7E308 1.7E308JAVA浮点类型常量有两种表示形式: 十进制数形式,必须含有小数点,例如: 3.14 314.0 .314 科学记数法形式,例如:3.14e2 3.14E2 314E2 注意:JAVA中浮点型常量默认为double型。也可以在数字后面加d或D 要声明一个常量为标准的float型,则需在数字后面加f或F,如: dou

7、ble d = 3.14; float f = 3.14f; 或者或者 float f=3.14F;Java数据类型nChar类型 char字符型保存无符号(不能表示负数)的 16 位双字节码位,其值的范围从 0 到65535,每个码位(或字符代码)表示单个 Unicode 字符。字符常量是用单引号括起来的单个字符,如: char c = A;char 的默认值是码位为 0 的Unicode编码的字符 。字符型数据对应了int的正半轴,是int类型的一个子集nString类型 在java中用String类型来表示字符串,是引用数据类型,不是基本数据类型。字符串常量用双引号括起来,如String

8、 str=“hello”;Java数据类型n特殊字符的转义序列符字符含义Unicode值 b退格u0008 t制表u0009 n换行u000a r回车u000d ”双引号u0022 单引号u0027 反斜杠u005cJava数据类型nboolean类型 boolean类型适合于逻辑运算,只允许取值true或false,不可以使用0或非0的整数替代true和false类型名大小(字节)范围boolean1(8bit)true或false/public class Hello3 public static void main(String args) String title; System.ou

9、t.println( title ); String title; /声明变量声明变量titletitle = Java ; /赋值赋值String title = Java; /声明变量声明变量title并赋值并赋值 12先声明变量并赋值,先声明变量并赋值,然后才能使用然后才能使用 常见错误常见错误1代码错误代码错误正确方案正确方案 / 变量名不能以变量名不能以%开始开始 常见错误常见错误2public class Hello4 public static void main(String args) int %hour = 18; System.out.println(%hour); 代码

10、错误代码错误/public class Hello5 public static void main(String args) String name = 张三张三; String name = 李四李四; 声明两个同名变量导致编译错误声明两个同名变量导致编译错误 String name = 张三张三;String Name = 李四李四;Java程序区分大小写程序区分大小写 常见错误常见错误3正确方案正确方案 java基本数据类型转换n自动类型转换 在某种条件下,系统自动完成类型转换两种类型兼容,且目标类型大于源类型byte-short-int-long-float-doublen强制类型转

11、换两种类型兼容,且目标类型小于源类型格式:(类型名)表达式如:int a=12; byte b=(byte)a;n包装类过渡类型转换 如:float型转换为double型时:float f1=100.00f; Float F1=new Float(f1); Double d1=F1.doubleValue();/ int age = 19; char sex = 女女; char result = age + sex; 下面语句正确吗?int a = 10;int b = 10.2;double c = 10; c = a;float d = c; 常见错误常见错误/小结1l使用变量存储以下M

12、P3信息,并打印输出l品牌(brand):爱国者F928l重量(weight):12.4l电池类型(type):内置锂电池l价格(price):499 n定义变量有哪两种方式?表达式和运算符 n表达式由操作数和运算符的组合而成n表达式中的操作数可以是变量、常量或者子表达式n运算符的主要类型有:n 赋值运算符 n 算术运算符n 关系运算符n 逻辑运算符n 位运算符n 其他运算符Z = ( X * 2 ) + ( 5 Y )变量名变量名 表达式表达式;赋值运算符2-1n赋值运算符JAVA中的=表示的是赋值符号,当“=”两侧的数据类型不一致时,可以使用默认类型转换或强制类型转换原则进行处理特例:可以

13、将整型常量直接赋值给byte, short, char等类型变量,而不需要进行强制类型转换,前提是只要不超出其表数范围如:byte b = 12;/合法 byte b = 4096 ; /非法 某班的A学员Java成绩是80分,B学员与A学员成绩相同,输出B学员成绩赋值运算符2-2运算符运算符表达式表达式计算计算结果(假设结果(假设 X=10X=10)+=X += 5X = X + 515-=X -= 5X = X - 55*=X *= 5X = X * 550/=X /= 5X = X / 52%=X %= 5X = X % 50复合赋值运算符算术运算符2-1n基本算术运算符算术运算符的运算

14、数必须是数字类型。算术运算符不能用在布尔类型上,但是可以用在char类型上,因为实质上char类型是int类型的一个子集。除法运算符/,如果两个操作数都是整数的话就做整除运算。求模运算符%,其运算结果是整数除法的余数,它能像整数类型一样被用于浮点类型(这不同于C/C+中模数运算符%仅仅能用于整数类型)某学员3门课成绩如右表所示,编程实现: 1、Java课和html课的分数之差 2、3门课的平均分课程分数oracle89Java90html60算术运算符2-2n算术运算符中还有两个一元运算符:+, -表达式表达式(num1=5)如何计算如何计算结果结果num2 = +num1;num1 = nu

15、m1 + 1;num2 = num1;num2 = 6;num1 = 6;num2 = num1+;num2 = num1;num1 = num1 + 1;num2 = 5;num1 = 6;num2 = -num1;num1 = num1 - 1;num2 = num1;num2 = 4;num1 = 4;num2 = num1-;num2 = num1;num1 = num1 - 1;num2 = 5;num1 = 4;/int num1 = 5; int num2 = 2; int a = num1 % num2;int b = num1 / num2;System.out.printl

16、n(num1 + % + num2 + = + a);System.out.println(num1 + / + num2 + = + b);int c=num1+;int d=-num2; System.out.println(num1 = + num1);System.out.println(num2 = + num2);5 % 2= 15 / 2 = 2下面代码片断的输出结果是什么? 输出输出%:求:求余数余数/:求商:求商num1 = 6num2 = 1输出输出关系运算符n常用关系运算符关系运算符用于决定值和值之间的关系。JAVA中的任何类型,包括整数、浮点数、字符以及布尔型都可用“=

17、”来比较是否相等,用”!=”来测试是否不等。只有整数、浮点数和字符运算数可以用来比较大小。 关系运算符的结果是boolean类型。 = = = !=逻辑运算符n逻辑运算符的操作数只能是布尔型。而且逻辑运算的结果也是布尔型 n当第一个运算数能决定表达式的值的时候,JAVA就不会对第二个运算数求值,只有在需要时才对第二个运算数求值。 &: 第一个操作数为假则不判断第二个操作数|:第一个操作数为真则不判断第二个操作数运算符运算符表达式表达式说明说明&条件1 & 条件2仅仅两个条件同时为真,结果为真|条件1 | 条件2只要两个条件有一个为真,结果为真! 条件条件为真时,结果为假

18、条件为假时,结果为真练习以下条件该怎么表达?n要求学生考试平均分在80分以上,并且出勤率75以上的学生才能毕业,否则要留级。n不需要补课的条件:3门课程中有一门成绩高于90即可。n选出年龄为18岁和20岁的学生n选出年龄在1820岁之间的男生位运算符n位运算符首先针对的位来进行运算的。n可以作用于数值型,也可以作用于布尔类型 n数值中的操作: | 按位或(两数据对应位都是0,则该位为0,否则为1) & 按位与(两数据对应位都是1,则该位为1,否则为0) 按位异或(两数据对应位相反,则该位为1,否则为0) 右移位(左侧填充符号位) 无符号右移位 按位取反(1变0 , 0变1)n布尔中的操作:&,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论