




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、java 数据类型Java的数据类型分为两种。一种是原始数据类型(8种),另外一种是引用数据类型(也就是 类类型)。1)原始数据类型分为8种,每种基本类型又对应有各自的包装类(wrapper class)。即:byte-Byteshort-Shortint-Integerlong-Longfloat-Floatdouble-Doublechar-Characterboolean-Boolean注意:每种对应的包装类都有相应的静态常量包装类都设有将String转换为基本类型的方法2)引用数据类型分3种:数组,类,接口二、标识符1、必须以 字母、下划线“_”或“$”符号开头。2、首字母后,可以跟任意数量的字母、数字、下划线“_”或“$”符号。注意:1、标识符,可以包含数字,但是不能以数字开头。2、除了下划线“_”和“$”符号以外,标识符不能包含任何特殊字符。3、标识符不能使用Java语言的关键字。4、Java 变量名区分大小写,所以cat 和Cat 是不相同的。5、Java变量名的长度没有任何限制。三、变量的作用域和生命周期Java(和C以及C+一样)是块结构语言。代码“块”指的是包含在一对大括号中的0行或多行代码序列。代码块可以嵌套在另一个代码块中直至任意深度,变量可以在程序内的任何块中声明。变量作用域是能够用变量名引用该变量的那一部分代码具体地说就是从变量第一次被声明的位置开始到声明这个变量的代码块的封闭(右)括号为止。只要变量名能够被编译器识别,就可以说变量在作用域内。一旦程序执行退出代码块,在这个代码块中声明的任何变量就超出了作用域,对程序而言这些变量不可访问。四、类型转换基本类型有以下四种:int长度数据类型有:byte(8bits)、short(16bits)、int(32bits)、long(64bits)、float长度数据类型有:单精度(32bits float)、双精度(64bits double)boolean类型变量的取值有:ture、falsechar数据类型有:unicode字符,16位对应的类类型:Integer、Float、Boolean、Character、Double、Short、Byte、Long转换原则从低精度向高精度转换 a. byte 、short、int、long、float、double、char注:两个char型运算时,自动转换为int型;当char与别的类型运算时,也会先自动转换为int型的,再做其它类型的自动转换 b. 强制类型转换 1)截断 float a=34.56734; int b=(int) a; 2)缩小转化 int a=32; byte b=(byte)a;基本类型向类类型转换正向转换:通过类包装器来new出一个新的类类型的变量Integer a= new Integer(2);反向转换:通过类包装器来转换int b=Value();类类型向字符串转换正向转换:因为每个类都是object类的子类,而所有的object类都有一个toString()函数,所以通过toString()函数来转换即可反向转换:通过类包装器new出一个新的类类型的变量eg1: int i=Integer.valueOf(“123”).intValue()说明:上例是将一个字符串转化成一个Integer对象,然后再调用这个对象的intValue()方法返回其对应的int数值。eg2: float f=Float.valueOf(“123”).floatValue()说明:上例是将一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值。eg3: boolean b=Boolean.valueOf(“123”).booleanValue()说明:上例是将一个字符串转化成一个Boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的boolean数值。eg4:double d=Double.valueOf(“123”).doubleValue()说明:上例是将一个字符串转化成一个Double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值。eg5: long l=Long.valueOf(“123”).longValue()说明:上例是将一个字符串转化成一个Long对象,然后再调用这个对象的longValue()方法返回其对应的long数值。eg6: char=Character.valueOf(“123”).charValue()说明:上例是将一个字符串转化成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值。基本类型向字符串的转换正向转换:如:int a=12;String b;b=a+”;反向转换:通过类包装器eg1:int i=Integer.parseInt(“123”)说明:此方法只能适用于字符串转化成整型变量eg2: float f=Float.valueOf(“123”).floatValue()说明:上例是将一个字符串转化成一个Float对象,然后再调用这个对象的floatValue()方法返回其对应的float数值。eg3: boolean b=Boolean.valueOf(“123”).booleanValue()说明:上例是将一个字符串转化成一个Boolean对象,然后再调用这个对象的booleanValue()方法返回其对应的boolean数值。eg4:double d=Double.valueOf(“123”).doubleValue()说明:上例是将一个字符串转化成一个Double对象,然后再调用这个对象的doubleValue()方法返回其对应的double数值。eg5: long l=Long.valueOf(“123”).longValue()说明:上例是将一个字符串转化成一个Long对象,然后再调用这个对象的longValue()方法返回其对应的long数值。eg6: char=Character.valueOf(“123”).charValue()说明:上例是将一个字符串转化成一个Character对象,然后再调用这个对象的charValue()方法返回其对应的char数值。五、java运算符一、算术运算符 所谓算术运算符,也就是我们数学中学到的加、减、乘、除等运算。这些操作可以对几个不同类型的数字进行混合运算,为了保证操作的精度,系统在运算的过程中会做相应的转换。1、数字精度 所谓数字精度,也就是系统在做数字之间的算术运算时,为了尽最大可能地保持计算机的准确性,而自动进行相应的转换,将不同的数据类型转变为精度最高的数据类型。规则如下: 1)当使用运算符把两个操作数结合到一起时,在进行运算前两个操作数会转化成相同的类型。 2)两个操作数中有一个是double类型的,则另一个将转换成double型。 3)两个操作数中有一个是float类型的,则另一个将也转换成float型。 4)两个操作数中有一个是long类型的,则另一个将也转换成long型。 5)任何其它类型的操作,两个操作数都要转换成int类型。2、整数型运算(int型) 对于int型的相关操作,加、减、乘的结果都是非常容易理解的,重点讲一下除(/)的运算。 两个整数相除的结果是整数,这一点与数学中是不同的,在Java中,两个整数相除的结果类似于数学中的求模运算。整除的余数是用%表示,例如15 / 2 = 7,而不是7.5,15 % 2 = 1。我们用程序验证一下: int a = 15; int b = 2; double c = 2; a/b; ab; a/c ;a%c;输出结果: 15 / 2 = 7 15 % 2 = 1 15 / 2.0 = 7.5 15 % 2.0 = 1.03、自增和自减运算符 在循环与控制中,我们经常会用到类似于计数器的运算,它们的特征是每次的操作都是加1或减1。在Java中提供了自增、自减运算符,X+使变量X的当前值每次增加1,而X-是自减运算符,每次操作使当前X的值减1。例如:/*测试自增、自减操作*/ int x = 10; int a = x+ x+; int b = x + +x; int c = x + x-; int d = x + -x; 输出结果: a = 20 x = 11 b = 23 x = 12 c = 24 x = 11 d = 21 x = 10 int x = 10; int a = ( x+)+x;注意:输出结果:a21; x11;二、关系运算符 Java具有完美的关系运算符。这些关系运算符基本上同数学中的关系运算符是一致的。“”大于、“=”大于等于、“ b; /true; y = a b; b = R != r; x = !a; y = a & b; z = a|b;输出结果: x = true y = false z = true四、移位运算符移位运算符的面向对象也是二进制的“位”。可以单独用移位运算符来处理int型数据。它主要包括:左移位运算符()、“无符号”右移运算符()1)左移位运算符 左移位运算符,用符号“”表示。它是将运算符左边的运算对象向右移动运算符右侧指定的位数。它使用了“符号扩展”机制,也就是说,如果值为正,在高位补0,若为负,则在高位补1。3)“无符号”右移运算符 “无符号”右移运算符,用符号“”表示。它同“有符号”右移运算符的移动规则是一样的,惟一的区别就是:“无符号”右移运算符,它采用了“零扩展”,也就是说,无论值为正负,都在高位补0。/*移位运算符测试*/ int a = 15; int b = 2; int x = a b; int z = a b; 输出结果: 15 2 = 3 15 2 =3五、赋值运算符赋值运算符是程序中最常用的运算符了,只要有变量的声明,就要有赋值运算。如a = 3;这里的a我们都知道是变量名,根据前面对变量的定义,我们可以知道这里的a实际上就是内存空间的一个名字,它对应的是一段内存空间,一在要在这个空间放入3这个值。这个放入的过程就实现了赋值的过程。 赋值运算一览表运算符一般表示法Java语言表示法+=a = a + ba += b-=a = a - ba -= b*=a = a * ba *=b/=a=a / ba /= b%=a = a % b
温馨提示
- 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秋招笔试模拟题含答案安全环保与HSE岗
- 广州市中储粮2025秋招写作案例分析万能模板直接套用
- 口腔疾病的预防与治疗措施
- 汽车机械基础 课件 绪论
- 客车检车员-中国铁路兰州局集团有限公司编
- 胖东来收银管理制度
- 中医护理操作并发症预防及处理
- 《混凝土结构耐久性电化学修复技术规程》
- 产后骨盆修复培训课件
- 桥式起重机Q2练习测试题附答案
- 哈里伯顿Sperry定向钻井介绍专题培训课件
- 2021年江苏省徐州市中考生物试卷(附详解)
- JJF 1704-2018 望远镜式测距仪校准规范
评论
0/150
提交评论