欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    java课件第三章ch.ppt

    • 资源ID:5436228       资源大小:309KB        全文页数:139页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    java课件第三章ch.ppt

    第3章 Java语言基础,3.1 Java语言的基本语法3.2 控制语句3.3 数组3.4 字符串,本章主要介绍编写Java程序必须了解的若干语言基础知识,包括数据类型、变量、常量、表达式和流程控制语句等。掌握这些基础知识,是书写正确的Java程序的前提条件。,3.1 Java语言的基本语法,Java语言使用国际字符格式标准(Unicode)。Unicode字符集采用16位编码,其前256个字符与ASCII字符集完全一致。除了ASCII字符之外,Unicode字符集还提供了其它语言文字,如汉字、希腊文、韩文等。,3.1 Java语言的基本语法3.1.1 标识符,Java标识符(identifier)是以字母开头的字母数字序列。标识符是用户定义的单词,用于标识变量、常量、类、方法、对象、文件等。其命名规则如下:“字母”、“数字”具有宽泛含义。字母通常指大小写英文字母、下划线(_)、美 元符($)等,也可以是Unicode字符集中的字符,如汉字等。数字通常指09。标识符可以是字母、数字等字符的任意组合,除此之外,不能包含其它字符(如+、-以及空格等)。标识符区分字母大小写,或者说大小写敏感。标识符不能使用Java中的关键字。标识符长度不受限制。,3.1.1 标识符,错误的标识符:int 2x;double my salary;String x+y;String test1-2-3;String class;String Java 在Java规范中,Java约定:关键字、变量名、对象名、方法名、包名通常使用小写;如果由多个单词构成标识符,则首字母小写,其后单词首字母大写,如toString;类名首字母大写,如FirstJava;常量名全部字母均大写,如BOOK。,关键字,关键字是Java语言保留的具有特定含义的英文单词。每一个关键字都有一种特定含义,不能被赋予别的含义,也不能把关键字作为标识符来使用。Java中关键字以及其含义如教材表3-1所示。,分隔符,圆括号、大括号、中括号、空格、逗号、分号等称为分隔符,Java规定任意两个相邻标识符、数、关键字或两个语句之间必须至少有一个分隔符,以便编译程序能识别。,分隔符,常用的分隔符如下:圆括号“()”:在方法声明和调用时候可以包括一组参数;在控制语句或者强制类型转换中用于数据的执行和数据类型的转换。大括号“”:在类、方法体、语句块以及初始化数组中的值声明时使用。中括号“”:在声明数组以及在访问数组元素中使用。空格“”:在源代码中用空格符改善源代码的书写形式,可以分割相邻的两个语法符号,使程序易读,空格符号可以是空格、Tab制表符、回车符和换行符等。逗号“,”:多个变量声明,方法中的参数之间可以使用。分号“;”:在语句结束以及for控制语句中可以使用。句号“.”:在调用方法、变量时可以使用。,【例3-1】分隔符的使用(Separator.java)/*功能简介:本程序演示分隔符的使用。首先声明一个数组,然后通过for语句把数组的值取出并相加,最后输出计算结果。*/public class Separatorpublic static void main(String args)/声明整型变量i和sum,sum并初始化int i,sum=0;int a=1,2,3,4,5;/声明整型数组/控制语句和数组遍历for(i=0;ia.length;i+)/遍历数组并计算结果sum+=ai;/for结束System.out.println(sum);/main()方法结束/类Separator结束,3.2.4 数据类型,Java语言中的数据类型分为两大类:基本数据类型和引用数据类型。,1.布尔类型 只有两个取值true(真)和false(假),全是小写,计算机内部用8位来表示。Java语言不允许数值类型和布尔类型之间进行转换。而在C/C+中,允许用数值表示,如用0表示false,非零表示true。Java语言中不允许这样做。2.整数类型 Java语言根据数据在内存中占用的位数不同提供了4种整数类型,分别是:byte,short,int,long,它们的位数递增,表示的数的范围也越来越大。如表3-2所示。,表3-2 Java整数类型,整型常量有3种表示形式:十进制整数、八进制整数、十六进制整数。所有Java编程语言中的整数类型都是带符号的数字,不存在无符号整数。当一个整数为长整型时,需在该数的后面加L,3.浮点类型 浮点类型是包含有小数部分的数值。Java中的浮点类型按其取值范围之不同,可分为float(浮点类型)和double(双精度型)两种,如表3-3所示。表3-3Java浮点类型,Java用浮点类型表示数学中的实数,一个浮点数值包括整数部分和小数部分。浮点数有两种表示方式:标准记数法由整数部分、小数点和小数部分构成,如1.0,123.45等。科学记数法一由十进制整数、小数点、小数和指数部分构成,指数部分由字母E或e跟上带正负号的整数表示 在浮点型常量后加上f或F,表示单精度。如:,2.6f,2.6F。在浮点型常量后不加任何字符或者加d或D表示双精度,如:2.11,2.3e3,2.3e3d,2.3e3D,2.6,2.6d,2.6D。,4.字符类型 字符类型(char)数据是由一对单引号()括起来的单个字符,该字符是16位的Unicode码。用单引号括起来称为字符常量,字符常量有两种表示法:一种是用单引号将可见ASCII字符括起来,如A、a、V等;另一种是用Unicode值表示。,Java的字符类型采用一种新的国际标准统一字符编码标准字符集Unicode编码。统一字符编码标准是一种十六位的字符编码标准,而ASCII则是七位编码,只适用于英文。另有西欧国家所用的ISO Latin-1八位编码。使用Unicode的好处就是用一个字符集就可解决所有现今世界上的可书写语言。Unicode共有65536个编码,其中有近39000种已被定义完成,而中国字就占了21000种!虽然Java程序是用Unicode写成的,但是亦支持ASCII及ISO Latin-1的格式。因其一般是将十六位的Unicode藉UTF-8编码方式,转成八位字节流(stream)后写入文件。故与ASCII,ISO Latin-1的编码方式互通。事实上,大多数的Java程序是用ASCII写成的,因为只有较少数的文本编辑器支持Unicode。,转义符是一些有特殊含义,很难用一般方式表达的字符,如:回车、换行等。为了表达清楚这些特殊的字符,同C语言一样,在JAVA中,所有的转义符都用反斜线()开头,后面跟着一个字符来表示某个特定的转义符,Java中的转义字符如表3-4所示。表3-4 转义字符,【例3-2】转义字符的使用(转义字符.java)/转义字符.java/*开发者:*功能简介:表3-4中转义字符的使用。*/public class 转义字符public static void main(String args)(中国n欢迎n你!t);,5.类型转换 Java程序中的类型转换可分为显式类型转换和隐式类型转换两种形式。(1)隐式类型转换 对于由二元运算中的算术运算符组成的表达式,一般要求运算符两边的两个操作数的类型一致,如果两者的类型不一致,则系统会自动转换为较高(即占用内存较多,取值范围较大)的类型,这便是隐式数据类型转换。,(2)显式类型转换 隐式类型转换只能由较低类型向较高类型转换,但是在实际工作中,有时也可能需要由较高类型向较低类型转换。例如,在计算数值时为了保证其精度,为某些变量取了较高的数据类型(如double型),但在输出时,往往只需要保留两、三位小数或者只输出整数,这时只能进行显式类型转换。显式类型转换需要人为地在表达式前面指明所需要转换的类型,系统将按这一要求把某种类型强制性地转换为指定的类型。格式如下:(),表3-5基本数据类型的转换,【例3-3】类型转换的使用(类型转换.java)/类型转换.javapublic class 类型转换public static void main(String args)int x=100;/隐式转换long y=x;(类型转换:整型+x+转换为长整型+y);double d=1212;/显示类型转换,强制类型转换int a=(int)d;(类型转换:double类型+d+转换为int类型+a);,注意:除了上面的基本数据类型以外,Java中还存在一种引用数据类型,包括类和接口等。如对应基本数据类型int,char,double的类Integer,Character,Double等等,这些类包含了一些特定的方法可以实现对数值的专门操作,如把字符串转换成双精度型数值等。,Java的安全和健壮性很大程度上来自于它是一种强类型语言。究其原因:首先,每个变量有类型,每个表达式有类型,而且每种类型都是严格定义的;其次,所有的数值传递,不管是直接的还是通过方法调用经由参数传过去的,都要先进行类型相容性的检查,而有些语言就没有自动强迫进行数据类型相容性的检查或对冲突的类型进行转换的机制。Java编译器对所有的表达式和参数都要进行类型相容性的检查,以保证类型是兼容的。任何类型的不匹配都将被报告为错误而不是警告。在编译器完成编译以前,错误必须被改正过来。,3.1.5 常量和变量,1.常量常量是在程序执行中其值不能被改变的量。(1)直接常量和符号常量 常量有两种形式:直接常量和符号常量。直接常量是指在程序中直接引用的常量,包括数值型常量和非数值型常量。其中,数值型常量称为常数,包括整数和浮点数,如10,-10.16等。非数值型常量有字符常量、字符串常量和布尔常量,如X,abc,true等。符号常量是以标识符形式出现的常量,符号常量必须先声明后使用。声明符号常量可以提高程序的可读性,使程序易于修改。,3.1.5 常量和变量,(2)常量声明 常量声明的形式与变量声明基本一样,还需要使用关键字final。格式如下:修饰符 final 数据类型 常量标识符=常量值;修饰符:用于表示该常量的权限,如public、private等。final:用于表示该符号常量的值是不能更改的。数据类型:可以是基本数据类型。例:public final int MAX=10;final float PI=3.14f;,3.1.5 常量和变量,Java语言约定常量标识符全部用大写字母表示。标识符一旦被声明为常量,就不能再做它用。声明常量的好处有两点:一是增加可读性,从常量名可知常量的含义;二是增强可维护性,只要在常量声明处修改常量值,即可改变程序中多处使用的常量值。,3.1.5 常量和变量,变量是在程序的运行过程中数值可变的数据,通常用来记录运算中间结果或保存数据。JAVA中的变量必须先声明后使用。Java中的变量在声明时最好进行初始化操作,否则在后面程序中访问没有初始化的变量会造成编译错误。JAVA的变量有一定的生存期和有效范围,同C语言一样,JAVA用大括号将若干语句组成语句块,变量的有效范围就是声明它的语句所在的语句块,一旦程序的执行离开了这个语句块,变量就变得没有意义,不能再使用了。,3.1.5 常量和变量,变量声明的格式如下:修饰符 类型 变量标识符=初始化表达式;见例3-4,注意各种基本的数据类型的声明方法;后面语句实现了将各种数据类型的数据转化为字符串形式,并输出,注意它是如何实现转化的。,public class VariableDeclarationpublic static void main(String args)boolean b=true;byte b1=1;short s=2;int i=3;long l=4;float f=1.11f;double d=2.222d;char c=x;String s1=我爱学习Java课程!;System.out.println(b=+b);System.out.println(b1=+b1);System.out.println(s=+s);System.out.println(i=+i);System.out.println(l=+l);System.out.println(f=+f);System.out.println(d=+d);System.out.println(c=+c);System.out.println(s1=+s1);,3.1.6 运算符与表达式,程序中对数据的操作,实际上是指对数据的运算。表示运算类型的符号称为运算符,参与运算的数据称为操作数。运算符把操作数按Java语法规则连接起来组成表达式。运算符和表达式构成了程序中完成各种运算任务的语句,是程序设计的基础。,3.1.6 运算符与表达式,1.运算符 Java提供了多种运算符。按参与运算的操作数的数目可分为一元运算符、二元运算符和三元运算符。按照运算符的功能可分为算术运算符、关系运算符、布尔逻辑运算符、位运算符以及赋值、条件、实例等其它运算符。,3.1.6 运算符与表达式,(1)算术运算符 算术运算符包括+、-、*、/、+、-和%,使用整型、字符型或浮点型操作数。对于除法运算(/),若操作数均为整数,结果也为整数;若有浮点数参与运算,结果为浮点数。例如:3/6的结果为0,3.0/6的结果为0.5。取模运算(%)可用于整型或浮点型操作数,运算结果的符号与第一个操作数的符号相同。例如:10%-3的结果为1,-10%3的结果为-1。,3.1.6 运算符与表达式,自增运算符(+)和自减运算符(-)是一元运算符,分别用于实现将变量的值增1和减1,要求操作数必须是整型或字符型变量。自增、自减运算符的前置运算是先实施自增、自减运算,再使用自增、自减后的操作数的值;后置运算是先使用操作数的值,再对操作数实施自增、自减运算。如:int x=2;int y=(+x)*3;int x=2;int y=(x+)*3;算术运算符的优先级顺序为:+、-最高,然后是*、/、%,最后是+、-。同级运算按从左到右的顺序进行。,3.1.6 运算符与表达式,Java对加运算进行了扩展,使它能够进行字符串的连接,如“abc”+“de”,可得到字符串“abcde”。(=+100+200+=);(=+(100+200)+=);(=+100+200);System.out.println(100+200+=);结果为:=100200=300=100200300=,3.1.6 运算符与表达式,(2)关系运算符 关系运算符包括、=、=、!=,用于比较两个值,返回布尔类型的值true或false。关系运算符都是二元运算符,常与逻辑运算符一起表示流程控制语句的判断条件。一般建议不要直接比较两个浮点数是否相等,因为float和double类型不能精确表示浮点数。关系运算符的优先级低于算术运算符。,3.1.6 运算符与表达式,(3)布尔逻辑运算符 布尔逻辑运算符包括&、|、!、&和|,用于对布尔类型数据进行与、或、非、异或等运算,运算结果是布尔类型数据。其中!(逻辑非)是一元运算符,(异或)及其它运算符都是二元运算符。,3.1.6 运算符与表达式,其中,,逻辑运算符,3.1.6 运算符与表达式,(4)位运算符 位运算符包括&、|、和,用于对二进制位进行操作,操作数只能是整型数据或字符型数据。除(取反)是一元运算符外,其余位运算符均为二元运算符。,3.1.6 运算符与表达式,表3-7 位运算真值表,3.1.6 运算符与表达式,(带符号右移位)运算可以将一个二进制数的各位右移若干位,低位移出丢弃,高位补符号位,即正数的高位补0,负数的高位补1。(不带符号右移位)运算也可以将一个二进制数的各位右移若干位,低位移出丢弃,但高位补0。执行位运算时要特别注意的是,整型、字符型操作数在计算机内部是以补码形式表示的。,3.1.6 运算符与表达式,例如,用一个字节存储整数时:5/运算结果为-6,实际上是00000101,结果为1111101056/运算结果为3,实际上是0000010100000110,结果为00000011-32/运算结果为-1,实际上是11111101右移2位,高位补符号位,结果为11111111-34/运算结果为15,实际上是11111101右移4位,高位补0,结果为00001111 Java规定,逻辑右移运算符()的操作数只能是int和long型。,1,1,-65,原码,反码,补码,1.正数的反码、补码和原码同形;负数的反码:为其原码符号位不变,其它按位求反;负数的补码:先对原码求其反码,再在末位加1。,为了简化运算操作和运算器的设计,计算机中用到了反码和补码编码形式。利用“补码”可以实现加减法之间的相互转换。,原码 反码 补码,反码,补码,3.1.6 运算符与表达式,(5)赋值运算符 赋值运算符包括=和复合赋值运算符,如算术复合赋值运算符+=、-=、*=、/=、%=,位复合赋值运算符=、=、变量i既是参与+运算的操作数之一,也是存储运算结果的变量。,3.1.6 运算符与表达式,(6)条件运算符 条件运算符(?:)是三元运算符。例如:x?y:z其计算过程是:先计算x的值;若x的值为true,则该条件运算的结果为y的值,否则该条件运算的结果为z的值。要求y与z的值具有相同的数据类型。,3.1.6 运算符与表达式,(7)实例运算符 实例运算符(instanceof)用于判断一个指定对象是否是一个指定类(或它的子类)的实例。例如:obj instanceof myclass 其中obj是一个对象,myclass是一个类,若obj是myclass创建的对象,则运算结果是true,否则是false。,3.1.6 运算符与表达式,括号与方括号:括号的优先级在所有的运算符中是最高的,方括号是数组运算符运算符:用于访问对象实例或者类的属性和方法new运算符:用于创建一个新的对象或者新的数组。,3.1.6 运算符与表达式,2.表达式 表达式是语句中最常见的组成元素之一。本质上,表达式描述运算规则并按规则执行运算,运算得到的结果值称为表达式的值,该值的类型即为表达式的类型。运算符的结合性决定了同一优先级的多个运算符的运算顺序,包括左结合(从左向右)和右结合(从右向左)。一元运算符-、!等都是右结合的,即操作数在运算符的右边。自增、自减运算符+和-根据其前置运算、后置运算的特点表现出两种结合性。除了赋值运算符,其它二元运算符的结合形式都是从左向右的。Java所有运算符的优先级和结合性如教材P51表3-8所示。,3.2 控制语句,控制语句提供对程序执行中流程的控制,是程序的核心。Java语言提供各种语句来实现程序的流程控制。Java语言语句分类如图所示。,3.2 控制语句,顺序语句,顺序结构是Java的基本结构。除非给出命令,否则计算机就会按照语句的编写次序一条接一条地执行,中间没有判断和跳转,直到程序结束,即按顺序执行。顺序结构语句包括表达式语句、空语句和复合语句。,顺序语句,1.表达式语句 某些表达式在其后面加上分号即可构成表达式语句。如自增自减运算、赋值、类实例化、方法调用等,都是表达式语句。例如:i+;x=10;sum=sum+1;new JFrame();,顺序语句,2.空语句 空语句仅包含一个分号,不执行任何操作。用于程序中某个语法上要求应该有一条语句而实际上不需要处理数据的情况。例如:for(int i=0;i10;i+);该for循环体只有“;”,表示该循环体只包含一条空语句,该循环体被执行10次,但是不作任何处理。,顺序语句,3.复合语句 复合语句,又称代码块语句,是由一对“”括起来的语句,中间可以有多个变量或者语句。,选择语句,选择语句,又称条件语句,通过判定条件的真假来决定执行某个分支语句。Java的选择语句有两种:if语句和switch分支语句。,1.if语句选择语句if语句基本的语法格式如下:if(布尔表达式)语句1;else 语句2;当布尔表达式值为true,执行语句1;否则执行else后面的语句。布尔表达式必须是布尔类型。语句1和语句2可以是单独语句,也可以是复合语句,如果是单独语句可以省略“”,是复合语句不能省略。else子句是可选项,当语句2为空语句时,else可省略。,例3-5 public class MaxMinpublic static void main(String args)int max,min;/max最大值,min最小值int x=7,y=9,z=5;if(xy)max=x;elsemax=y;if(zmax)max=z;System.out.println(最大值是:+max);min=xy?x:y;min=zmin?z:min;System.out.println(最小值是:+min);有时对复杂的判断,单个if语句不能实现,需要多个if语句进行嵌套。,例3-6 public class StatementNestedSeasonpublic static void main(String args)String season;/声明一个变量,用于表示季节int month=5;/具体的一个月份if(month=3|month=4|month=5)season=春季;else if(month=6|month=7|month=8)season=夏季;else if(month=9|month=10|month=11)season=秋季;else if(month=12|month=1|month=2)season=冬季;elseseason=对不起,你选择的月份不是1月-12月,不在一年四季中;System.out.println(season);,例3-7 import;public class StatementNestedScorepublic static void main(String args)float score;Scanner input=new Scanner(System.in);/实例化一个对象(请输入成绩:);score=input.nextFloat();/对象调用方法获取数据if(score90)if(score80)if(score70)if(score60)(你的成绩等级为:不及格!);else(你的成绩等级为:及格!);else(你的成绩等级为:中等!);else(你的成绩等级为:良好!);else(你的成绩等级为:优秀!);,Scanner类是一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。“Scanner input=new Scanner(System.in);”是实例化一个对象input,System.in是参数,是Java的标准输入对象。“input.nextFloat();”将输入信息的下一个标记扫描为一个 float。,2.switch分支语句switch语句基本的语法格式如下:switch(表达式)case 常量表达式1:语句序列1;break;case 常量表达式2:语句序列2;break;default:语句序列;switch语句的执行过程:将表达式的值按照从上至下顺序依次与case后面常量表达式的值进行比较,当两个值相等时,执行其后的语句序列,直到遇到break或者switch语句执行完。如果没有和表达式的值相等的常量时,执行default 后面的语句,若没有default 语句,则不执行。,import;public class SwitchWeekpublic static void main(String args)Scanner input=new Scanner(System.in);/实例化一个对象(请输入17的整数:);int day=input.nextInt();/对象调用方法获取数据switch(day)case 7:(星期日);break;case 1:(星期一);break;case 2:(星期二);break;case 3:(星期三);break;case 4:(星期四);break;case 5:(星期五);break;case 6:(星期六);break;default:(你输入的日期不在有效范围内!);,import;public class SwitchSeasonpublic static void main(String args)Scanner input=new Scanner(System.in);(请输入112的整数:);int month=input.nextInt();switch(month)case 3:/空语句,继续执行下一个case语句 case 4:/空语句,继续执行下一个case语句 case 5:(春季);break;case 6:case 7:case 8:(夏季);break;case 9:case 10:case 11:(秋季);break;case 12:case 1:case 2:(冬季);break;default:(你输入的月份不在有效范围内!);,循环语句,循环语句可根据循环条件反复执行循环体。Java语言中的循环语句有:while语句、do-while语句和for语句。,循环语句,1.while语句while语句基本的语法格式如下:while(布尔表达式)一条语句或者多条语句;while语句先判断后执行。当布尔表达式的值为true,执行语句,语句也可以是用“”括起来的代码块,执行完后再去判断布尔表达式是否为true,继续进行循环;当布尔表达式的值为false时,循环结束。,public class WhileSumpublic static void main(String args)int i=1;int n=10;int sum=0;while(i=n)sum+=i;i+;System.out.println(1加到10的和是:+sum);(循环后变量i的值是:+i);,import;public class WhileAnySumpublic static void main(String args)double x=0;double sum=0;int i=0;Scanner input=new Scanner(System.in);(请输入多个数,每输入一个数后按Enter或Tab或者空格键确认:);(输入一个非数字符号结束输入操作!);/hasNextDouble()方法是判断输入的是否是double类型的数据while(input.hasNextDouble()x=input.nextDouble();/获取数据sum+=x;i+;(共输入+i+个数,其和为:+sum);,循环语句,do-while语句基本的语法格式如下:do 一条语句或者多条语句;while(布尔表达式);先执行do中的语句再判断while中的布尔表达式的值,为true继续循环,否则循环结束。,public class DoWhileSumpublic static void main(String args)int i=1;int n=10;int sum=0;dosum+=i;i+;while(i=n);System.out.println(1加到10的和是:+sum);System.out.println(循环后变量i的值是:+i);,import java.util.Scanner;import java.util.Random;public class GuessingGamepublic static void main(String args)/声明一个变量用于保存Random类随机生成的1100的整数int game;/声明一个变量用于保存猜的数int guess;/用于统计猜数次数int counter=0;/实例化一个对象,该对象可以产生随机数Random randomNumbers=new Random();/*randomNumbers对象调用nextInt()方法生成一个随机数;randomNumbers.nextInt(100)表示生成099的任意一个整数,生成过程由Random类自动生成。*/game=1+randomNumbers.nextInt(100);,/实例化一个对象,用于获取键盘输入的数据Scanner input=new Scanner(System.in);do(请输入你猜的数字(1100的整数):);/对象调用方法获取从键盘输入的数据guess=input.nextInt();counter+;if(guessgame)(你猜的数字太大!);else(你猜的数字太小);while(guess!=game);(恭喜你,你猜了+counter+次,你猜对了!);,/*功能简介:使用do-while语句进行利息计算。假如在银行帐号上存入100000元,年利率是3.6%,计算多少年后存款能够连本带息翻一番。使用的公式如下:a=p(1+r)n 其中:p是存款的资金。r是每年的利率(0.036,代表3.6%)。n是存款年数。a是第n年底结算的存款总额。*/public class Interestpublic static void main(String args)/声明变量用于保存第n年底结算的存款总额double amount;/声明变量并初始化每年的利率double rate=0.036;/声明变量并初始化初始存款总额double principal=100000.0;/声明存款的年限并初始化int n=0;,do/*使用类中的pow()方法,实现对公示(1+r)n的计算。Math类中提供许多数学方法可供使用,如需使用请查API*/amount=principal*Math.pow(1.0+rate,n);n+;while(amount2*principal);System.out.println(n+年后连本带利翻一番!+账户资金为:+2*principal);,do-while循环与while循环的不同在于:它先执行循环中的语句,然后再判断条件是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-while循环至少要执行一次循环语句。,循环语句,3.for语句for语句基本的语法格式如下:for(表达式1;表达式2;表达式3)一条语句或者多条语句;表达式1一般是一个赋值语句,它用来给循环控制变量赋初值;表达式2是一个布尔类型的表达式,它决定什么时候退出循环;表达式3一般用来修改循环变量,控制变量每循环一次后按什么方式变化。,循环语句,for语句的执行过程:1、在循环刚开始时,先计算表达式1,在这个过程中,一般完成的是初始化循环变量或其它变量。2、根据表达式2的值来决定是否执行循环语句。表达式2是一个返回布尔值的表达式,若该值为假,将不执行循环语句,并退出循环;若该值为真,将执行循环语句。3、执行完一次循环语句后,计算表达式3。在这个过程中一般会修改循环变量。4、转入第2步继续执行。,public class ForSumpublic static void main(String args)/声明循环变量i并初始化,按自增或者自减变化int i=1;/声明循环体n并初始化,用于控制循环次数 int n=10;/声明变量total并初始化,用于计算结果int total=0;for(i=1;i=n;i+)total+=i;/计算结果/格式化输出,%d表示输出的类整型,total和其对应(结果是:%dn,total);,/*功能简介:使用for语句进行利息计算。假如在银行帐户上存入100000元,年利率是3.6%,计算并显示10年间每年结算时帐户里的存款总额。公式如【3-14】中所示。*/public class ForInterestpublic static void main(String args)double amount;double principal=1000000.0;double rate=0.036;/*格式化输出%s%20sn表示要输出两个字符串类型的数据,其中%20s表示以20个字符的长度输出对应的变量“存款额”。两个%,对应后面两个变量。*/(%s%20sn,年,存款额);,for(int year=1;year=10;year+)amount=principal*Math.pow(1.0+rate,year);/*%4d表示后面对应的year长度为4;%,20.2f表示对应的变量amount长度为20且有两位小数点并右对齐。*/(%4d%,20.2fn,year,amount);,/*功能简介:使用for语句的多重循环(循环语句中又有循环语句,称为多重循环结构)输出九九乘法表。*/public class Mul99 public static void main(String args)int i;int j;int n=9;(*|);for(i=1;i=n;i+)(+i);System.out.print(n-|);for(i=1;i=n;i+)(-);();,for(i=1;i=n;i+)/控制九次循环(+i+|);/输出每行的数 for(j=1;j=i;j+)/输出乘积数(+i*j);/数据具体的某个乘积();,转移语句,Java语言提供3种无条件转移语句:return、break和continue。return语句可以从方法中返回值;break和continue语句用于控制流程转移。,转移语句,1.return语句 return语句能终止当前成员方法的执行,返回到调用该方法的位置,并从紧跟该语句的下一条语句继续程序的执行。如果该方法的返回类型不是void,则需要提供相应类型的返回值。return语句有以下两种使用格式:格式1:return;该格式用在返回类型为void的方法中,且return可以省略。一般若方法为void类型,return可省略。格式2:return 返回值;该格式返回值可以是基本数据类型和引用数据类型,但必须和方法的类型一致,否则编译无法通过。,转移语句,2.break语句break语句主要有3种作用:一是终止switch语句的执行,跳出switch语句,执行switch语句后面的语句;二是终止循环语句序列,跳出循环结构,即跳出if、while、for等语句;三是与标记语句配合使用从内层循环或者内层程序跳出。,public class BreakStatement public static void main(String args)int count;for(count=1;count=10;count+)if(count=5)break;System.out.println(count);/在Java语言中+表示两个字符串连接(循环中断的数是:+count);,转移语句,3.continue语句 终止当前这一轮的循环,跳过本轮剩余的语句,直接进入当前循环的下一轮。在while或do-while循环中,continue语句会使流程直接跳转至条件表达式。在for循环中,continue语句会跳转至表达式3,计算修改循环变量后再判断循环条件。,public class ContinueStatement public static void main(String args)int count;for(count=1;count=10;count+)if(count=5)continue;System.out.println(count);(循环的次数是:+count);,在程序中使用到相关类时,必须在类的声明前面用import加载该类。如import;定义main()方法的方法头时必须按以下格式 public static void main(String argu)main方法中的参数String argu

    注意事项

    本文(java课件第三章ch.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开