第二章Java语言基础课件_第1页
第二章Java语言基础课件_第2页
第二章Java语言基础课件_第3页
第二章Java语言基础课件_第4页
第二章Java语言基础课件_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 Java基础,1、标识符与关键字 2、基本数据类型 3、表达式和运算符 4、程序基本结构和语句 5、数组 6、字符串,1,PPT学习交流,学习目标,if/else语句 switch语句 for循环,while循环 break, continue跳转 字符串常用的方法,2,PPT学习交流,2.4程序基本结构和语句,程序具有一定的结构,或面向过程,或面向对象。它由一系列语句组成。 语句是组成一个执行程序的基本单元,类似于自然语言的句子。,3,PPT学习交流,程序的3种基本结构,程序的3种基本结构 顺序结构、分支结构、循环结构,4,PPT学习交流,Java语句分类,5,PPT学习交流,2.4

2、.1 顺序结构语句,表达式语句 表达式; 空语句 复合语句 变量声明或常量声明; 语句序列; ,6,PPT学习交流,表达式语句,一个表达式的最后加上一个分号就构成了一个语句。 如 x=3; y=5; sum=x+y;,7,PPT学习交流,复合语句,用把一些语句括起来就构成了复合语句。 x=25+x; System.out.println(“x=”+x); ,8,PPT学习交流,控制语句,通常语句在程序中都是按先后顺序执行,控制语句用于改变程序执行的顺序。 Java的控制语句有: if-else语句 switch语句 while do-while语句 for语句 跳转语句 异常处理语句,9,PP

3、T学习交流,if条件语句,1、if 语句的一般形式 if(表达式) 若干语句; ,10,PPT学习交流,计算圆面积的简单程序改进,1 获取用户输入的半径值 2 当用户输入的半径值为负数时,提示用户输入错误 3 当用户输入的半径值正确的时候,计算面积并输出.,11,PPT学习交流,例子 2-5: 判断用户输入的数是奇数还是偶数 public class Example2_5 public static void main(String args) String inStr=JOptionPane.showInputDialog(“请输入整数:”); int number=Integer.pars

4、eInt(inStr); if( number%2=0) System.out.println(number +“is 偶数”); if( number%2!=0) System.out.println(number +“is 奇数”); ,12,PPT学习交流,例子 6: public class Example2_6 public static void main(String args) int math=65 ,english=85; if(math60) System.out.println(数学及格了); else System.out.println(数学不及格); if(eng

5、lish90) System.out.println(英语是优); else System.out.println(英语不是优); if(math60 ,13,PPT学习交流,例子 7: class Example2_7 public static void main(String args) int x,y=10; if(x=0)=0)|(y=20)=20) System.out.println(现在 y 的值是:+y); int a,b=10; if(a=0)=0)|(b=20)=20) System.out.println(现在 b 的值是:+b); ,14,PPT学习交流,switch

6、语句,switch语句是一个多分支选择语句,也叫开关语句。它可以根据一个整型表达式有条件地选择一个语句执行。 switch(变量名称或表达式) case 符合数字或字符: 语句块1; break; case 符合数字或字符: 语句块2; break; default: 语句块3; ,15,PPT学习交流,switch语句首先计算条件表达式的值,如果表达式的值和某个case后面的常量数值相同,就执行该case里的若干条语句,直到break语句为止。 若没有一个常量与表达式的值相同,则执行default后面的若干条语句。default是可有可无的,如果它不存在,并且所有的常量数值都和表达式的值不相

7、同,那么switch语句就不进行任何处理。,16,PPT学习交流,switch语句,表达式的计算结果必须是int型或字符型,即是int型赋值相容的。 当用byte,short或char类型时,要进行提升。,17,PPT学习交流,switch语句,switch语句不允许使用浮点型或long型表达式。 c1,c2,ck是int型或字符型常量。default子句是可选的,并且,最后一个break语句完全可以不写。,18,PPT学习交流,switch语句示例,例: public class Test public static void main(String args) int week=1; Sy

8、stem.out.println(week=+week+ ); switch(week) case 0: System.out.println(Sunday);break; case 1: System.out.println(Monday);break; case 2: System.out.println(Tuesday);break; case 3: System.out.println(星期三);break; case 4: System.out.println(星期四);break; case 5: System.out.println(星期五);break; case 6: Sys

9、tem.out.println(星期六);break; default:System.out.println(数据错误);break; ,19,PPT学习交流,循环语句,循环语句控制程序流多次执行一段程序。 Java语言提供三种循环语句:for语句、while语句和do语句。,20,PPT学习交流,1.for语句,for语句的语法格式是: for (初始语句;逻辑表达式;迭代语句) 语句; 初始语句和迭代语句中可以含有多个语句,各语句间以逗号分隔。 for语句括号内的三部分都是可选的,逻辑表达式为空时,默认规定为恒真,21,PPT学习交流,for语句的语义,先执行初始语句,判断逻辑表达式的值,

10、当逻辑表达式为真时,执行循环体语句,执行迭代语句,然后再去判别逻辑表达式的值。这个过程一直进行下去,直到逻辑表达式的值为假时,循环结束,转到for之后的语句。 for语句中定义的循环控制变量只在该块内有效。,22,PPT学习交流,循环语句示例,for (int i = 0; i 3; i+) System.out.println(“Are you finished yet?”); System.out.println(“Finally!”);,23,PPT学习交流,结果,Are you finished yet? Are you finished yet? Are you finished y

11、et? Finally!,24,PPT学习交流,循环语句示例,for ( ; ; ) System.out.println(“Always print!”); 该语句等价于: for ( ; true ; ) System.out.println(“Always print!”);,这段循环不会停止。,25,PPT学习交流,循环语句示例,int sumi = 0, sumj = 0; for ( int i = 0, j = 0; j 10; i+, j+) sumi += i; sumj += j; ,26,PPT学习交流,例子 6:求从 1 加到 100 的和 import java.ap

12、plet.*;import java.awt.*; public class Example3_6 extends Applet public void paint(Graphics g) int sum=0; for(int i=1;i=100;i+) sum=sum+i; g.drawString(sum= +sum,10,20); ,27,PPT学习交流,例子 7: 求 10 的阶乘 import java.applet.*;import java.awt.*; public class Example3_7 extends Applet public void paint(Graphi

13、cs g) long jiecheng=1; for(int i=10;i=1;i-) jiecheng=jiecheng*i; g.drawString(10 的阶乘是 +jiecheng,10,20); ,28,PPT学习交流,应用思考题-百鸡百钱问题,编写程序求解百鸡百钱问题。公鸡5元一只,母鸡3元一只,小鸡一元3只,问100元钱买100只鸡,可买公鸡、母鸡、小鸡各多少只?,29,PPT学习交流,2. while循环,while循环的语法是: while (逻辑表达式) 语句; while语句中的逻辑表达式不能用数值来代替。 while循环的特点是”先判断后执行”。,30,PPT学习交流

14、,2. while循环,while语句的语义是: 计算逻辑表达式,当逻辑表达式为真时,重复执行循环体语句,直到逻辑表达式为假时结束。,31,PPT学习交流,while语句的语义,如果第一次检查时逻辑表达式为假,则循环体语句一次也不执行。 如果逻辑表达式始终为真,则循环不会终止。,32,PPT学习交流,while循环示例,例: int i = 0; while (i 3) System.out.println(“Are you finished yet?”); i+; System.out.println(“Finally!”);,33,PPT学习交流,class Sum_while publi

15、c static void main(String args) int i=1,n=10,s=0; while (i=n) s += i; i+; /改变循环条件 /循环结束后,i=11,s=55 System.out.println(s = +s); System.out.println(i = +i); ,34,PPT学习交流,如何显示累加和计算公式和计算结果? 输出:Sum(8)=1+2+3+4+5+6+7+8=36?,35,PPT学习交流,计算Fibonacci序列 首两项是0,1,以后各项是其前两项之和的序列。 fib(n)= fib(n-1)+fib(n-2) n=2 final

16、int MAX = 20; int i=0,j=1,count=0; while (countMAX) System.out.print( +i+ +j); i = i + j; j = i + j; count += 2; System.out.println();,36,PPT学习交流,3. do循环语句,do语句的语法格式是: do 语句; while (逻辑表达式); 先执行后判断,37,PPT学习交流,do循环示例,int i = 0; do System.out.println(“Are you finished yet?”); i+; while (i 3); System.ou

17、t.println(“Finally!”);,38,PPT学习交流,求累加和,int i=1,n=10,s=0; do s += i; i+; while (i=n); System.out.println(s = +s); System.out.println(i = +i);,39,PPT学习交流,用辗转相除法求最大公因数,int a=12,b=18,k=0; System.out.print(Gcd(+a+,+b+)=); do k = a % b; a = b; b = k; while (k!=0); System.out.println(a);,40,PPT学习交流,while与d

18、o-while语句执行流程,41,PPT学习交流,循环语句,for、while及do语句可互相替代。 例如: do 语句1; while (逻辑表达式); 等价于: 语句1; while(逻辑表达式) 语句1;,42,PPT学习交流,特殊的流控制语句,Java语言使用两条特殊的流控制语句: Break continue 用在分支语句或循环语句中。,43,PPT学习交流,特殊的流控制语句,1. 标号 标号可以放在for,while或do语句之前。 语法格式为: 标号:语句;,44,PPT学习交流,特殊的流控制语句,2. break语句 break语句可用于switch,for,while及do语

19、句中。 语义:跳过本块中余下的所有语句,转到块尾,执行其后的语句。,45,PPT学习交流,break语句示例,for (int i = 0; i 100; i+) if ( i = 5 ) break; System.out.println(“i= ” +i); ,46,PPT学习交流,例:将1到20之间的数进行累加,直到其累加和大于等于100 public void TestBreak() int sum=0; int number=0; while(number=100) break; ,47,PPT学习交流,特殊的流控制语句,break语句还可以和标号结合使用。 语法格式为: break

20、 标号; 语义:是跳出标号所标记的语句块,继续执行其后的语句。,48,PPT学习交流,break语句示例,class Break public static void main (String args) outer: for(int i=0; i50) break outer; System.out.println(i*j); ,49,PPT学习交流,特殊的流控制语句,3. continue语句 在循环语句中,continue可以立即结束当次循环而执行下一次循环,当然执行前先判断循环条件是否满足。 continue语句也可以和标号一起使用。 语法格式为: continue 标号;,50,PP

21、T学习交流,continue语句示例,outer:for (int i = 0; i i ) System.out.println(); continue outer; System.out.print(“*”); ,51,PPT学习交流,(4)在循环体中使用语句 break 和语句 continue.例子 9: class Example2_9 public static void main(String args) int sum=0,i,j; for( i=1;ij/2) System.out.println(+j+是素数); ,52,PPT学习交流,2.5 数组,数组是存贮数据的集合,

22、是一组相同类型变量的集合,可以使用共同的名字引用它。,53,PPT学习交流,创建和使用数组,1、声明数组 (1)声明一维数组的格式: 数组元素的类型 数组的名字; (2)声明二维数组的格式: 数组元素的类型 数组的名字;,54,PPT学习交流,创建数组,一般来说,当创建数组的时候,使用 new 操作符,后面跟着数组元素的数据结构。然后将元素的数目用方括号括起来,其格式如下所示: 数组名字= new 数组元素的类型数组元素的个数 ; 例: a = new int10;,55,PPT学习交流,数组元素的使用,数组可以通过下标访问自己的元素: 数组下标是基于0的,从0到数组.length-1 int

23、 a =new int10; for(int i=0;ia.length;i+) ai=i; System.out.print(ai+); ,56,PPT学习交流,确定数组的大小,为了获得数组的大小,可以使用下面的代码: 数组名.length; 注意,不能在length后面加一个圆括号( ),否则造成错误,因为length不是一个方法。,57,PPT学习交流,处理数组,由于数组元素都是同一类型,并且大小确定,因此处理数组元素经常使用for循环。 (1)随机数初始化数组 (2)输出数组 (3)对所有元素求和 (4)查找最大元素,58,PPT学习交流,用一位数组计算Fibonacci序列值,int

24、 fib = new int 23; int i,n=20; fib0=0; fib1=1; for (i=2;in;i+) fibi = fibi-1 + fibi-2; for (i=0;ifib.length;i+) /输出一维数组 System.out.print( +fibi); System.out.println();,59,PPT学习交流,2.5.2 多维数组的应用,在Java中,多维数组(multidimensional arrays)是由若干行和若干列组成数组。在人们工作生活与学习中,要使用二维表格、矩阵、行列式等,都可以表示成多维数组。例如: int D = new in

25、t34;,60,PPT学习交流,该语句声明并创建了一个3行4列的数组D。这个数组在逻辑上可以表示成一个int类型的矩阵。 也就是说,这个数组在逻辑上可以表示为: D00 D01 D02 D03 D10 D11 D12 D13 D20 D21 D22 D23,61,PPT学习交流,2.6 字符串的简单介绍,1、字符串声明与创建 下面是声明并创建字符串的语句: String str ; str = this is a Stirng. ; 也可以将上面二条语句合并为一条语句: String str = this is a String. ;,62,PPT学习交流,字符串操作,63,PPT学习交流,(

26、1)求字符串的长度,例: String str1 = Hello! ; String str2 = 你身体好吗?; System.out.println(str1.length(); System.out.println(str2.length();,64,PPT学习交流,(2)比较两个字符串,String类中有三个方法可以比较两个字符串是否相同。 public int compareTo(String str); public boolean equals(Object obj); public boolean equalsIgnoreCase(String str);,这里需要特别说明,比

27、较二个数值x、y是否相等,我们使用x=y。而比较二个字符串相等则不能使用“=”来比较。请看下面的程序段:,65,PPT学习交流,关于字符串的比较说明,Java中必须使用string1.equals(string2)来进行判断 如果: string s1=Hello; string s2=Hello; 则(s1=s2)=true; 因为他们指向的同一个对象。,66,PPT学习交流,关于字符串的比较说明,如果: String s1=new String(Hello); String s2=new String(Hello); 则(s1=s2)=? 如果把其他变量的值赋给s1和s2,即使内容相同,由

28、于不是指向同一个对象,也会返回false。所以建议使用equals(),因为equals比较的才是真正的内容,67,PPT学习交流,(3)字符串与数值的转换,字符串str转换为整型: int x=Integer.paresInt(str); 字符串str转换为float型: float n=Float.paresFloat(str); 例如: String str = String.valueOf(123.4);,68,PPT学习交流,(4)字符串与字节数组的转化,要将一个字符串转化为字节数组,可用下列方法: byte d=字符串对象.getBytes(); 反之,要将一个字节数组转化为字符串,则用字符串的构造方法就能达到目的。 String(byte, int offset, int length),69,PPT学习交流,其他字符串常用操作,提取单个字符 charAt(index)用于提取字符串一个指定的字符。 提取子串 public String subString(int beginIdx,int endIdx) 字符串连接 concat String s3=s1.concat(s2);

温馨提示

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

最新文档

评论

0/150

提交评论