java程序设计第二章教学课件.ppt_第1页
java程序设计第二章教学课件.ppt_第2页
java程序设计第二章教学课件.ppt_第3页
java程序设计第二章教学课件.ppt_第4页
java程序设计第二章教学课件.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 数据类型、运算符和表达式,2,本章主要内容,常量:包括字面常量和符号表示的常量; 变量:整形、浮点型、字符型和布尔型; 数组:Java的数组属于类类型; 参数传递方式; 运算符:包括逻辑运算符、算术运算符和位运算符等;,3,2.1 常量,整形常量:采用八进制、十进制、十六进制表示,但不能采用二进制表示,和C/C+中的一样。 浮点常量:采用十进制或科学记数法表示。在缺省情况下一个浮点数是double型。 布尔常量:true和false,它们不是数,不能进行算术运算。 字符常量:与C/C+中的表示类似 。 字符串常量:Java中字符串常量是对象 。,4,2.2 变量,变量的命名原则是:以字

2、母(az和 AZ)、下划线(_)和$符号开头的, 由字母、数字(09)、下划线和$构成的一个符号序列。 例如,a,_a,NameOfStudent,$10均是合法变量名,而-a和9a是非法变量名。关键字不能用作变量名 ( 见表2-1 ) 注意:Java对变量是区分大小写 .,5,2.2.1 整形类型的变量,字节(byte)型,8个位。 短整形(short),占16个位。 整形 ( int ),占32个位。 长整形 ( long int ),占64个位。 Java中的整形最值均有符号。例如程序2-1测试最值:,public class Test_Int / 程序2-1 测试整形变量的最值 pub

3、lic static void main(String args) System.out.println(Byte.MAX_VALUE ); System.out.println(Byte.MIN_VALUE ); System.out.println(Short.MAX_VALUE ); System.out.println(Short.MIN_VALUE ); System.out.println(Integer.MAX_VALUE ); System.out.println(Integer.MIN_VALUE ); System.out.println(Long.MAX_VALUE );

4、 System.out.println(Long.MIN_VALUE); ,7,注意: byte、short、int、long是原子类型,而Byte、Short、Integer和Long分别是四种原子类型对应的类类型。,2.2.1 整形类型的变量(续),8,2.2.2 字符类型变量,Java字符量的长度为16个位,表示范围是从u0000 到 uffff 即从0 到 65535; Character是char类型对应的类类型 ; 最大值 Character.MAX_VALUE ; 最小值 Character.MIN_VALUE ;,9,2.2.3 浮点类型变量,分类:float和double。

5、Float 、Double 是对应的类类型 ; Float.MAX_VALUE、Float.MIN_VALUE是最值。 Float.POSITIVE_INFINITY 和 Float.NEGATIVE_INFINITY是正/负无限大 。,10,2.2.4 布尔类型变量,boolean变量取值:true和false ; true和false不能转换成任何数值表示,true不是1,false也不是0 。,11,2.2.5 原子类型变量的生存空间,一个变量的生存空间是由两个大括号决定的 范围。下列写法在C/C+中是正确的,但在Java中是错误的 ( 注意 )。 int x=1; int x=0; /

6、 错误 ,12,2.3 变量赋值问题,如果类中定义的原子类型变量,未给出初值,那么它们将有缺省值 :byte、short、int 和long变量的缺省值是0;char 、float、double和boolean变量的缺省值分别是u0、0.0f、0.0d和false。 方法内定义的局部变量,应当对其赋值,否则无法通过编译 。例如:,/ 程序2-4 class Test / 定义一个类 int Value; / 类中的变量未赋值,缺省就是0 public class Test_Var public static void main(String args) int x=100; / 必须赋值,否则

7、无法通过编译 Test obj=new Test( );/ 对象赋值 System.out.println( obj.Value + +x); ,14,2.4 数组,Java数组是系统定义类Array 的子类; 数组的分类同C/C+:一维和多维。,15,2.4.1 一维数组,定义数组的格式 :int a ; 或 int a ;其值是null ; 在定义数组时不能指定大小。a仅是一个引用,代表一个数组名,但没有对应的空间。 产生数组空间的方法有两种 : 在定义时直接赋值:int a =1,2,3; 通过new分配空间:int a =new int10;,注意:Java数组名是一个引用,当将一个数

8、组名赋值给另一个数组时,实际上是名字的复制, 例如 2-5: public class Test_Array public static void main(String args) int a =1,2,3, b ; b= a ; for(int i=0;i3;i+) b i +; for(int i=0;i3;i+) System.out.println(ai); ,17,2.4.1 一维数组(续),获得数组元素的个数:数组名.length; 一个整形数组若仅仅采用new分配空间,而没有对其赋值,那么每个元素的值是0 。,18,2.4.2 二维数组,产生二维数组空间的方法有两种: 定义时直

9、接赋值:int b= 1,2 , 3,4 ; 通过new运算符分配空间 。 二维数组形状任意,不一定是矩形。例如程序2-7:,public class Test_Array2 public static void main(String args) int a ; a=new int2 ; a0=new int3; a1=new int6; System.out.println( a 的长度 = + a.length ); System.out.println(a0 的长度 = + a0.length ); System.out.println(a1 的长度 = + a1.length );

10、,20,2.5 Java中的参数传递方式,Java的参数传递的形式有两种:基本类型按值传递,对象类型按引用传递; 通过return语句从方法中返回时,基本类型总是以值的方式返回,而对象总是以引用方式返回。 例如程序2-8 :,class testint x; public class Test_Paras static test fun(test o,int y) o.x=20; y=1; return o; public static void main(String args) test obj1 , obj2; int Val = 3; obj1=new test( ) ; obj1.x

11、=100; obj2=fun(obj1,Val); System.out.println(obj1.x+ + obj2.x+ +Val); ,运行结果:20 20 3,22,2.6 Java的运算符,主要包括: 算术运算符、关系运算符、逻辑运算符、位运算符和三元条件运算符 。,23,2.6.1 算术运算符,算术运算符:+、-、*、/、%、+和-,与C/C+基本相同。 %运算符不但可以对整形数据运算,而且可以对浮点型数据运算。 例如:3.14 % 2.5的值约等于0.64 ;,24,2.6.2 关系运算符,关系运算符不能同其它类型的变量一同 参与运算,例如假设a,b,c是三个整形的变量,那么 a

12、=b=c 就是错误的 ; 关系运算符用于对象时,是判别两个引用是否代表同一个对象。例如:,class number int x; public class relationalOperator public static void main(String args ) number n1,n2; n1=new number( ); n2=new number( ); n1.x=1; n2.x=1; if(n1.x=n2.x) System.out.println(对象的数据成员x相等!); if(n1=n2) System.out.println(n1和n2是一个对象!); else System.out.println(n1和n2不是一个对象!); ,26,2.6.3 逻辑运算符,逻辑运算符有 return x 1; static boolean testTwo(int x) System.out.println(x+ +1+ +(x2); return x 2; public static void main(String args) if (testOne(6) ,28,2.6.4 位运算符,位运算符:,29,2.6.5 三元条件运算符,语法格式:(exp

温馨提示

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

评论

0/150

提交评论