您好,欢迎访问三七文档
JAVA2编程技术基础四川大学锦城学院计算机科学与信息工程系赵春Java系列课程Java语言基础求图形面积publicclassGraphic{publicstaticvoidmain(String[]args){doublelength=Double.parseDouble(args[0]);doublearea=0;area=length*length;System.out.println(area);}}Exceptioninthreadmainjava.lang.ArrayIndexOutOfBoundsException:0atcom.basic.Graphic.main(Graphic.java:6)javaGraphicJava系列课程Java语言基础读取用户输入输入为空?提示用户输入错误正常进行计算是否求图形面积Java系列课程Java语言基础程序流程控制if(expression){………//程序块1}else//可选项{………//程序块2}–选择语句Expression?程序块1程序块2returntruefalseJava系列课程Java语言基础选择语句例:猜商品价格publicclassQuessNumber{publicstaticvoidmain(String[]args){intprice=120;intqNumber=Integer.parseInt(args[0]);if(target==qNumber){System.out.println(您猜中了!);}else{System.out.println(“谢谢参与!);}}}Java系列课程Java语言基础选择语句例:猜商品价格if(target==qNumber){System.out.println(您猜中了!);}else{System.out.println(重在参与,谢谢猜数!);}if(target==qNumber)System.out.println(您猜中了!);elseSystem.out.println(重在参与,谢谢猜数!);if(target==qNumber){System.out.println(您猜中了!);}if(target!=qNumber){System.out.println(“重在参与,谢谢猜数!”);}Java系列课程Java语言基础选择语句例:猜商品价格——提示用户publicclassQuessNumber{publicstaticvoidmain(String[]args){inttarget=100;intqNumber=Integer.parseInt(args[0]);if(targetqNumber)System.out.println(您猜的价格低于实际价格!);elseif(targetqNumber)System.out.println(您猜的价格高于实际价格!);elseSystem.out.print(您猜中了!);}}选择语句可以嵌套使用Java系列课程Java语言基础求图形面积•codingpublicclassGraphic{publicstaticvoidmain(String[]args){if(args.length==0)System.out.println(请输入正方形边长!);else{doublelength=Double.parseDouble(args[0]);doublearea=0;area=length*length;System.out.println(area);}}}思考:如何让用户在程序运行过程中与程序交互?Java系列课程Java语言基础JavaAPI扫描器Scannerjava.util.Scanner•一个可以使用正则表达式来分析基本类型和字符串的简单文本扫描器Java系列课程Java语言基础ScannerpublicclassJ_Test{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);while(scanner.hasNext()){Strings=scanner.next();if(s.equals(exit))break;System.out.println(s);}scanner.close();}}代表来自键盘的标准输入判断是否还有下一个元素获取下一个元素关闭扫描器对象创建扫描器对象Java系列课程Java语言基础codingimportjava.util.Scanner;publicclassGraphic{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System.in);if(scanner.hasNext()){doublelength=Double.parseDouble(scanner.next());doublearea=0;area=length*length;System.out.println(area);}}}思考:如何让用户在程序运行过程中多次与程序交互?Java系列课程Java语言基础程序流程控制–循环结构●初始化部分:设置相关循环变量的初始值●条件部分:决定是否执行循环●循环部分:反复执行的一段代码,主体部分●迭代部分:对循环计数器进行加1或减1的操作来进行下一轮循环Java系列课程Java语言基础循环语句for(initialization;condition;iteration){repetition;}●初始化、条件及迭代部分都可以是空语句。●若控制变量已初始化,则可以省略初始化部分。●若增量由for循环体内的语句完成或不需要增量,则迭代部分也可以被省略。Java系列课程Java语言基础循环语句intn=0;inti=0;for(;i10;i++){n+=i;}–for循环intn=0;inti=0;for(;i10;){n+=i;i++;}•利用for循环求1到10的累加和?intn=0;for(inti=0;i10;i++){n+=i;}Java系列课程Java语言基础Example•今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?publicclassJavaTest{publicstaticvoidmain(String[]args){intx;for(x=0;x100;x++){if((x%3==2)&&(x%5==3)&&(x%7==2))System.out.println(“这个数字是:”+x);}}}Java系列课程Java语言基础循环语句–for循环多重循环冒泡排序:a[]={3,0,2,1,4}初始数据:30214第一趟:32140第二趟:32410第三趟:34210第四趟:43210◇相邻元素进行比较,小的元素往后移动◇每一趟排序能够确保某一个元素在正确的位置◇为了提高效率,每一趟排序应该去掉那些已经排好序的元素Java系列课程Java语言基础◇首先扫描数组,定位每一个待比较的元素;然后再次扫描除此元素以外的其它元素。for(?){for(?){?}}◇每一趟排序能够确保某一个元素在正确的位置需要排序的趟数:a.lengthfor(inti=0;ia.length-1;i++)◇为了提高效率,每一趟排序应该去掉那些已经排好序的元素每一趟需要排序的元素个数:a.length-1-ifor(intj=0;ja.length-1-i;j++)◇相邻元素进行比较,小的元素往后移动if(a[j]a[j+1]){temp=a[j+1];a[j+1]=a[j];a[j]=temp;}Java系列课程Java语言基础循环语句–for循环多重循环//冒泡排序算法的Java实现publicstaticvoidBubbleSort(inta[]){inttemp=0;for(inti=0;ia.length-1;i++){for(intj=0;ja.length-1-i;j++){if(a[j]a[j+1]){temp=a[j+1];a[j+1]=a[j];a[j]=temp;}}}}Java系列课程Java语言基础publicclassQuessNumber{publicstaticvoidmain(String[]args){inttarget=100;intqNumber=0;System.out.println(请输入您猜的商品价格:);Scannerscanner=newScanner(System.in);for(;scanner.hasNext();){qNumber=Integer.parseInt(scanner.next());if(targetqNumber)System.out.println(您猜的价格低于实际价格!);elseif(targetqNumber)System.out.println(您猜的价格高于实际价格!);elseSystem.out.print(您猜中了!);}}}循环语句Java系列课程Java语言基础–for循环给用户三次机会,猜中即退出publicclassQuessNumber{publicstaticvoidmain(String[]args){inttarget=100;intqNumber=0;System.out.println(请输入您猜的商品价格:);Scannerscanner=newScanner(System.in);for(inti=0;scanner.hasNext()&&i3;i++){qNumber=Integer.parseInt(scanner.next());if(targetqNumber)System.out.println(您猜的价格低于实际价格!);elseif(targetqNumber)System.out.println(您猜的价格高于实际价格!);elseSystem.out.print(您猜中了!);}}}Java系列课程Java语言基础跳转语句–break语句:跳出整个循环inti=0;for(;i10;i++){System.out.println(i);if(i==6)break;}intsum=0;outer:for(inti=1;i100;i++){inner:for(intj=1;j3;j++){sum+=j;if(i+j6)}}System.out.println(“sum=”+sum);breakouter:sum=15breakinner:sum=109不带标签的break语句带标签的break语句breakouter;breakinner;Java系列课程跳转语句Java语言基础–continue语句:跳出本次循环inti=0;while(i10){i++;if(i==6)continue;System.out.println(i);}Java系列课程Java语言基础循环语句–for循环Java系列课程Java语言基础–for循环给用户三次机会,猜中即退出inttarget=100;intqNumber=0;System.out.println(请输入您猜的商品价格:);Scannerscanner=newScanner(System.in);for(inti=0;scanner.hasNext()&&i3;i++){qNumber=Integer.parseInt(scanner.next());if(targetqNumber)System.out.println(您猜的价格低于实际价格!);elseif(targetqNumber)System.out.println(您猜的价格高于实际价格!);else{Sys
本文标题:java高级教程
链接地址:https://www.777doc.com/doc-4358412 .html