JAVA大学教学课件第三章语言基础

上传人:工**** 文档编号:584112891 上传时间:2024-08-30 格式:PPT 页数:32 大小:439.52KB
返回 下载 相关 举报
JAVA大学教学课件第三章语言基础_第1页
第1页 / 共32页
JAVA大学教学课件第三章语言基础_第2页
第2页 / 共32页
JAVA大学教学课件第三章语言基础_第3页
第3页 / 共32页
JAVA大学教学课件第三章语言基础_第4页
第4页 / 共32页
JAVA大学教学课件第三章语言基础_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《JAVA大学教学课件第三章语言基础》由会员分享,可在线阅读,更多相关《JAVA大学教学课件第三章语言基础(32页珍藏版)》请在金锄头文库上搜索。

1、 Java语言程序设计语言程序设计第三章第三章:Java语言基础语言基础 3.1 引入引入程序举例:publicclassBasicsDemopublicstaticvoidmain(Stringargs)intsum=0;for(intcurrent=1;current op1op2op1大于op2的时候z=op1=op2 op1大于等于op2的时候z op1op2op1小于op2的时候z=op1=op2 op1小于等于op2的时候z=op1=op2 op1等于op2的时候z!=op1!=op2 op1不等于op2的时候 3.3 操作符操作符-5逻辑运算符逻辑运算符z运算符 用法 在什么情况

2、下返回truez&op1&op2op1和op2都是true,有条件地计算op2|op1|op2op1或者op2是true,有条件地计算op2!opop为false 3.3 操作符操作符-5class Testpublic static void main(String arg) int b=2;int c=3;int a=0;if(61)System.out.println(a=+a);System.out.println(a=+a);System.out.println(b=+b);System.out.println(c=+c); 3.3 操作符操作符-6位运算符位运算符z运算符用法在什么

3、情况下返回trueop1op2将op1右移op2个位op1op1op2将op1右移op2个位(无符号的)&op1&op2按位与|op1|op2按位或op1op2按位异或op2按位取反 3.3 操作符操作符-6-1 3.3 操作符操作符-7其它运算符其它运算符z运算符描述z?:作用相当于if-else语句z用于声明数组,创建数组以及访问数组元素z. 用于访问对象实例或者类的类成员函数z(params)意义一个以逗号分开的参数系列z(type)将数值转换为一个的类型znew创建一个新的对象或者新的数组zinstanceof决定是否第一个运算对象是第二个运算对象的一个实例 3.3 操作符操作符-8各

4、种运算符的优先顺序各种运算符的优先顺序z后缀运算符 .(params)expr+expr-z单元运算符 +expr-expr+expr-expr!z创建运算符 new(type)exprz乘法运算符 */%z加法运算符 +-z移位运算符 z关系运算符 =instanceofz相等与不等 =!=z按位运算符 AND&z按位运算符 ORz按位运算符 OR|z逻辑运算符 AND&z逻辑运算符 OR|z条件运算符 ?:z赋值运算符 =+=-=*=/=%=&=|= 3.3 操作符操作符-9类型转换:类型转换:类型按精度从类型按精度从“底底”到到“高高”排列了顺序。排列了顺序。byte-short-int

5、-long-float-doublechar-int级别低的赋给级别高的变量,系统自动完成数据类型的转换。级别低的赋给级别高的变量,系统自动完成数据类型的转换。floatx=100;如果输出x的值,结果将是100.0例如intx=50;floaty;y=x;如果输出y的值,结果将是50.0。级别高的值赋给级别底变量,必须使用显示类型转换运算。级别高的值赋给级别底变量,必须使用显示类型转换运算。例如: intx=(int)23.89; longy=(long)34.98F;强制转换运算可能导致精度的损失。 3.3 操作符操作符-10问题:问题:1、两个byte类型的数相加是什么样的呢?2、cha

6、r和short类型? 3.4 流程控制流程控制语句句-11、If 语句:语句:(条件表达式必须是布尔类型的)zpublic class IfElseDemo zpublic static void main(String args) zint testscore = 76;zchar grade;zif (testscore = 90) zgrade = A;z else if (testscore = 80) zgrade = B;z else if (testscore = 70) zgrade = C;elseif(testscore=60)grade=D;elsegrade=F;Sys

7、tem.out.println(Grade=+grade);程序的输出为:Grade=C 3.4 流程控制流程控制语句句-22、switch 语句:语句:publicclassSwitchDemopublicstaticvoidmain(Stringargs)intmonth=8;switch(month)case1:System.out.println(January);break;case2:System.out.println(February);break;case3:System.out.println(March);break;case4:System.out.println(Ap

8、ril);break;case5:System.out.println(May);break;case6:System.out.println(June);break;case7:System.out.println(July);break;case8:System.out.println(August); break;case9:System.out.println(September);break;case10:System.out.println(October);break;case11:System.out.println(November);break;case12:System.

9、out.println(December);break;default:System.out.println(“Error);break;*switch表达式与case表达式的类型可以是bytecharshortintlong 3.4 流程控制流程控制语句句-33、while语句:publicclassWhileDemopublicstaticvoidmain(Stringargs)StringcopyFromMe=Copythisstringuntilyou+encountertheletterg.;StringBuffercopyToMe=newStringBuffer();inti=0;

10、charc=copyFromMe.charAt(i);while(c!=g)copyToMe.append(c);c=copyFromMe.charAt(+i);System.out.println(copyToMe);最后一行打印出来的数值为:Copythisstrin思考题:请用dowhile(直到型)语句改写 3.4 流程控制流程控制语句句-44 4、forfor语句:语句:publicclassForDemopublicstaticvoidmain(Stringargs)intarrayOfInts=32,87,3,589,12,1076,2000,8,622,127;for(inti

11、=0;iarrayOfInts.length;i+)System.out.print(arrayOfIntsi+);System.out.println();这个程序的输出为:3287358912107620008622127.无限循环for(;true;)for(;)while(true)dowhile(true)/5.0以后版本使用新的for语句for(:)比如:for(inttem:arrayOfInt) 3.4 流程控制流程控制语句句-55 5、breakbreak语句:语句:publicclassBreakDemopublicstaticvoidmain(Stringargs)int

12、arrayOfInts=32,87,3,589,12,1076,2000,8,622,127;intsearchfor=12;inti=0;booleanfoundIt=false;for(;iarrayOfInts.length;i+)if(arrayOfIntsi=searchfor)foundIt=true;break;if(foundIt)System.out.println(Found+searchfor+atindex+i);elseSystem.out.println(searchfor+notinthearray);这个程序的输出为:Found12atindex4 3.4 流程

13、控制流程控制语句句-66 6、continuecontinue语句:语句:publicclassContinueDemopublicstaticvoidmain(Stringargs)StringBuffersearchMe=newStringBuffer(peterpiperpickedapeckofpickledpeppers);intmax=searchMe.length();intnumPs=0;for(inti=0;imax;i+)/interestedonlyinpsif(searchMe.charAt(i)!=p)continue;/processpsnumPs+;searchM

14、e.setCharAt(i,P);System.out.println(Found+numPs+psinthestring.);System.out.println(searchMe);这个程序的输出为:Found9psinthestring.PeterPiPerPickedaPeckofPickledPePPers 3.4 流程控制流程控制语句句-77、带标号break和continue语句:classLabeledBreakpublicstaticvoidmain(Stringargs)intj;outer:for(;true;)inner:for(j=1;j10;j+)if(j=1)Sy

15、stem.out.println(j);continueinner;if(j=2)System.out.println(j);continue;if(j=3)System.out.println(j);breakouter;思考题:另外一次跳出多重循环的方法。使用标记变量的连环跳。 3.4 流程控制流程控制语句句-88、return语句:最后讲讲分支结构的最后一个return语句。你可以使用return来退出当前的方法。控制流程返回到调用方法的下一个语句。这个return语句有两种形式:一种是返回一个数值,另外一种没有返回数值。为了返回一个数值,简单地,可以将数值放置在return关键字后面即

16、可。例如:return+count;由return返回的数值类型必须匹配方法声明返回的数值类型。当方法被声明void,return的使用就不返回一个数值:return3.6 小程序设计小程序设计-11、计算程序的运行时间的方法:、计算程序的运行时间的方法:importjava.util.Calendar;classLesson2publicstaticvoidmain(Stringargs)longcur1,cur2,interval;Calendarcal=Calendar.getInstance();cur1=cal.getTimeInMillis();for(inti=1;i1000;i+)System.out.println(i);cal=Calendar.getInstance();cur2=cal.getTimeInMillis();System.out.println(cur1);System.out.println(cur2);interval=cur2-cur1;System.out.println(interval); 3.6 小程序设计小程序设计-22、数学函数与随机数。3、随机产生26个字母AZ中的一个。4、计算n!的两种方法:递归和循环。5、输出100以内的素数,要求每行五个数。6、汉诺塔问题。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号