版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、T2 Java数据处理与流程控制1回顾Java的历史与发展Java语言特性理解Java 虚拟机 (JVM)Java的开发环境与配置2目 标数据类型运算符号流程控制数组3变量变量的特性名称:标识符,代表这块内存中的数据。类型:根据所存储的数据类型的不同,有各种不同类型的变量。初始值:为其赋值或者是保留缺省值,变量在使用前必须先初始化。作用域 : 在不同程序块中的可用性及生命周期int x=0; y=x+3;Java中两大数据类型基本数据类型:也称作内置类型,Java语言本身提供的基本数据类型,是其他类型(包括Java核心库和用户自定义类型)的基础。 例如:boolean , char 等引用数据
2、类型:Java语言根据基本类型扩展出的其他类型。 例如: class , interface 等在程序执行期间可根据需要经常变化的值。4java的变量类型数据类型基本数据类型引用数据类型数值型字符型(char)布尔型(boolean)整数类型(byte, short, int, long)浮点类型(float, double)类(class)接口(interface)数组5基本数据类型的取值范围基本类型类型定义 类型取值 boolean1字节8位true,falsebyte1字节8位有符号整数 -128 + 127 char2字节16位Unicode字符 Unicode 0 Unicode 2
3、16-1 short2字节16位有符号整数 -32768 (-215) + 32767 (+215-1)int4字节32位有符号整数 -2147483648(-231) + 2147483647(231-1) long8字节64位有符号整数 -263 + 263-1float4字节32位浮点数1.4E-45 3.4E+38 , -1.4E-45 -3.4E+38 double8字节64位浮点数4.9E-324 1.7E+308, -4.9E-324 -1.7E+308 6基本数据类型之间的转换当把一个long类型的变量赋值给int类型时,int可能存不下那么大的数。所以编译器不允许把long变
4、量赋值给int变量但是反之可以除boolean类型外,所有的原始数据类型因为各自的精度不同,赋值时都要考虑这个问题7基本数据类型之间的转换自动类型转换(隐式类型转换)byte b = 3;int x = b; /b自动转换成int型14321byteint强制类型转换(显示类型转换)byte a;int b;a = (byte) b; / 强制转换强转时,当心丢失数据或失真8基本数据类型之间的转换相同类型的变量、常数运算,结果还是原类型不同类型的变量、常数运算,结果的类型为参与运算的类型中精度最高者表达式的数据类型自动提升规则byte,short,char型的值被提升int型其中一个操作数为l
5、ong型,结果为long型其中一个操作数为float型,结果为float型其中一个操作数为double型,结果为double型9基本数据类型之间的转换案例说明:byte b = 50;char c = a;short s = 1024;int i = 50000;float f = 5.67f;double d = .1234;result = (f * b) + ( i/c )-( d * s );请问result是什么类型?案例分析System.out.println(a+1);System.out.println(“”+a+1);以上两条语句打印结果是什么?10运算符运算符是一种特殊符号
6、,用以表示数据的运算、赋值和比较,一般由一至三个字符组成 。运算符共分以下几种算术运算符赋值运算符比较运算符逻辑运算符位运算符11算术运算符12赋值运算符赋值运算符 (=) 用于为变量赋值13比较运算符关系运算符用于测试两个操作数之间的关系。关系表达式将返回一个布尔结果。运算符含义示例=等于a=b!=不等于a!=b大于ab小于a=大于或等于a=b=小于或等于a 右移 b = a 2 无符号右移,左边空出的位以0填充 b = a 2 左移 b = a 1 Java中位运算符都是通过二进制进行操作的。16位运算规则:任何信息在计算机智中都是以二进制的形式保存的,&、|、除了可以作为逻辑运算符,也可
7、以作为位运算,它们对两个操作数中的每一个二进制位都进行运算。只有参与运算的两位都为1,&运算的结果才为1,否则就是0。只有参与运算的两位都为0,|运算的结果才为0,否则就是1。只有参与运算的两位不同,运算的结果才为1,否则就是0。我们可以对数据按二进制的位进行移位操作,Java的位移运算有三种:右移无符号右移位运算10001010右移100010100被抛弃右移后补117运算符的优先级高优 先级低18三元运算符 (?:)三元运算符 (? :) 可以替代 if-else 结构truefalse条件 ? 表达式 1 : 表达式 2 class TernaryOp public static voi
8、d main(String args) int salary,daysPresent = 30; salary = daysPresent = 20 ? 2000 : 3000; System.out.println(您本月薪资为 $+salary); 19Instanceof 运算符class InstanceOfDemo public static void main (String args ) InstanceOfDemo t = new InstanceOfDemo( ); if (t instanceof InstanceOfDemo) System.out.println (T是
9、InstanceOfDemo 的实例); else System.out.println (T不是InstanceOfDemo 的实例!); 可以确定对象是否属于一个特定的类20控制结构选择if-elseSwitch循环while do-while forJava 支持下列控制结构:选择、循环、跳转跳转breakContinue21if (i 10) return i * 100;else return i * 10;以上代码片断等效于:return i 10 ? i * 100 : i * 10;if-else 选择语句22switch 选择语句switch 结构的语法为: switch(表
10、达式) case 常量值 1: 语句(组); break; case 常量值 2: 语句(组); break; case 常量值 N: 语句(组); break; default: 语句(组);表达式必须为byte,short,int或char类型 常量值必须是与表达式类型兼容的特定的一个常量不允许有重复的case值 default子句为可选23while 循环 while(条件) 语句组; do-while循环do 语句组;while(条件);for 循环 for(变量初始化; 循环条件表达式; 递增或递减变量的值) 语句组; 循环语句“初始化”和“循环条件表达式”部分可以使用逗号来执行多个
11、操作如果三个部分都为空语句(分号不能省),相当于一个无限循环“当型”循环,先判断条件再执行“直到型”循环,先执行再判断条件,也就是说,至少可以执行一次 在while(条件)后面的分号不要忘24循环语句使用规则While 适合于开始不清楚循环将要进行的次数,而且循环可能一次都不进行的情况do-while 适合于不清楚循环次数,但是循环肯定要进行一次的情况For 适合于预先知道循环将要进行的次数的情况一定程度上他们是可以互相替换的25break和continuebreak 语句在循环中用于立即从当前循环终止控制。遇到 break 语句时,将跳出当前循环。continue 语句则是从其调用处跳至循环
12、的开始处。continue 语句之后的语句将不再执行。26Return 返回语句Return语句从当前方法退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续执行程序。返回语句的两种格式:1、return expression返回一个值给调用该方法的语句。返回值的数据类型必须和方法声明中的返回值类型一致或是精度低于声明的数据类型。2、return当方法声明中用void声明返回类型为空时,应使用这种返回类型,它不返回任何值。27数组:是有相同类型的、用一个标识符名称封装到一起的一个对象序列或基本数据类型数据序列。数组是一种最简单的复合数据类型。数组可以是一维的也可以是多维的。一维数组定
13、义:type arrayName 或 type arrayName说明:type : 可以是java中任意的数据类型,包括简单类型和复合类型(也可以是数组)arrayName :为一个合法的标识符;指明该变量是一个数组类型的变量。数 组28例如声明一个数组x:int x ; int x;声明一个数组,每个元素都是整数数据。声明的时候不指定数组的长度。只声明的数组是不能访问它的任何元素的请问此时能否访问该数组中的值?数 组 -声明数组变量int x ;29用new关键为对象分配其内存空间。Type arrayName = new typearraySize例如: int x = new int1
14、00;通过引用来使用数组元素 :arrayNameindexindex为数组下标,可是整型常数或表达式。index取值从 0 到 arraySize-1;数 组 为数组分配空间X = new int10030当 x = null 即该数组对象不再被任何引用变量使用的时候,“垃圾回收器”将自动释放该内存资源数组在内存中的分配31数 组数组的静态初始化int ia=1,2,3,4;int ia=new int3,4,5;动态初始化int intArray;/声名数组Int Array = new int5;/为数组分配空间注意:声明数组时,无论用何种方式定义数组,都不能指定其长度int a5; 声
15、明的时候不能指定长度32数 组使用时要注意的问题空指针异常(NullPointException)只声明但没有初始化的时候直接使用该变量。数组越界异常(ArrayIndexOutBoundsException)所有数组的下标都从0开始int a =1,2,3;for (int i= 0; i a.length; i+) System.out.println(ai); 其中length属性表示数组的长度33多维数组多维数组(数组的数组)java没有真正的多维数组,只有数组的数组二维数组的定义type arrayName ;或type arrayName;例子:int xx = new int33
16、;int xx = 3,2,7,1,5,6;34多维数组C中的数组必须是 x*y矩阵Java中的数组则可任意35静态初始化int intArray =3,2,7,1,5,6;Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数组每一维的大小相同。多维数组36多维数组动态初始化int xx = new int3 ; /指定一个3行n列的数组xx0 = new int3; /指定第一行为3列xx1 = new int2; /指定第二行为2列在Java语言中,必须首先为最高维分配引用空间,然后再顺次为低维分配空间。37总结数据类型运算符号流程控制数组38作业1、哪
17、些是基本数据类型?哪些是引用数据类型?2、算术运算符中“/”和“%”的区别是什么?3、描述几种分支结构的语法和执行过程?4、在循环中使用什么方式跳出或终止循环?5、while循环和do-while循环有什么区别?39上机作业1、写一个程序,通过控制台输入某个学生的成绩,并进行比较,大于60的根据成绩的不同给出不同的奖励,小于60分进行惩罚。2、写一个程序,通过控制台输入30个学生的成绩,最后统计出最高分、最低分、和平均分成绩3、定义几个变量描述长方形的长和宽,然后计算出该长方形的周长、面积并输出?40上机作业1、编写一个程序,如下图,先输出供用户选择的信息选项,然后用户输入选择的选项序号,程序根据选项的序号打印出相对应的信息,然后结束程序。41上机作业2、编写猜数字程序,先定义一个变量,给变量初始化个值,用户通过控制台猜该变量的值,如果用户输入的值大于变量的值就提示“大了”,如果小于就提示“小了”,直到猜对为止?423、使用二维数组存储并打印如下数据: 1 2 3 4 5 6 7 8 9 10 然后打印它的倒三角: 1 2 4 7 3 5 8 6 9 1043写程序输出下面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网络安全机房巡检维护方案
- 2024计算机软件许可合同专业版范文
- 吉林师范大学《插画设计》2021-2022学年第一学期期末试卷
- 吉林大学《牙周病学》2021-2022学年第一学期期末试卷
- 吉林大学《体质测量与评价》2021-2022学年第一学期期末试卷
- 数据的计算(1)计算的概念、Excel公式课件2024-2025学年高一上学期高中信息技术必修1第一单元教科版
- 吉林大学《汽车事故工程》2021-2022学年第一学期期末试卷
- 吉林大学《交通统计学》2021-2022学年第一学期期末试卷
- 房地产开发定金合同示例
- 中学实验室管理信息化方案
- 2024年国家公务员考试行测(副省级)真题及答案解析
- 2023年中央机关遴选笔试真题及解析(B卷)
- 手机摄影PPT学习课件(摄影的七大要素)
- 医院车辆加油卡管理制度
- 平面四杆机构急回特性说课课件
- 安徽职业技术学院实验实训室建设管理办法(试行)
- 岗位价值评估表(共4页)
- 娃哈哈晶钻水营销策划方案
- 绝世武林秘籍峨眉十二桩之八.附
- 磁悬浮列车(课堂PPT)
- 高考英语3500词汇表(附音标无中文释译
评论
0/150
提交评论