




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计第1章概述1Java的发展历史2Java语言的特点3Java虚拟机4Java的应用5Java开发环境的建立6
Java应用程序7编写Java应用程序注意事项本章目标理解什么是程序了解Java的技术内容掌握简单调试与排错技术什么是程序程序一词来自生活,通常指完成某些事务的一种既定方式和过程在日常生活中,可以将程序看成对一系列动作的执行过程的描述银行1、带上存折/银行卡去银行3、将存折或储蓄卡递给银行职员并告知取款数额2、取号排队5、银行职员办理取款事宜生活中的程序6、拿到钱并离开银行4、输入密码计算机中的程序什么是指令?1、做口述笔记……2、键入信函的内容……3、发送传真……1、口述2、信函System.out.println("口述");System.out.println("信函");System.out.println("传真");指令被逐条执行程序员老板秘书程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合要执行的一组指令程序3、传真为什么学习Java
Java是SunMicrosystems于1995年推出的高级编程语言Java领域的JavaSE、JavaEE技术已发展成为同C#和.NET平分天下的应用软件开发平台和技术PK.PK.Java可以做什么
开发桌面应用程序银行软件、商场结算软件开发面向Internet的应用程序网上数码商城、阿里巴巴、易趣网演示示例:Java2DDemoJava技术平台简介JavaSE:JavaPlatform,StandardEditionJavaEE:JavaPlatform,EnterpriseEdition
操作系统(包含运行环境)JavaEEJavaSE开发Java程序三步走1、编写源程序2、编译源程序3、运行publicclassHelloWord{publicstaticvoidmain(String[]args){
…这里填写代码!...}}Java程序框架外层框架Java入口程序框架填写代码第一个Java程序演示示例:如何创建一个Java程序publicclassHelloWord{publicstaticvoidmain(String[]args){System.out.println("你好!");}}分析程序publicclassHelloWord{
publicstaticvoidmain(String[]args){System.out.println("你好!");}}关键字高亮显示类名与文件名完全一样main方法是Java程序执行的入口点{和}一一对应,缺一不可main方法四要素必不可少从控制台输出信息小结11、从控制台打印输出你的姓名和年龄2、从控制台打印输出“张三18”System.out.println("张三");System.out.println("18");System.out.print("张三\n");System.out.print("18");println:输出信息并执行换行print:输出信息,但不执行换行\n:换行符System.out.println("张三\t18");\t:制表位Java程序的注释2-1/**HelloWod.java*2009-5-8*第一个Java程序*/publicclassHello{publicstaticvoidmain(String[]args){System.out.println("你好!");}}文件的名称日期功能说明符号/**/指示中间的语句是该程序中的注释多行注释以/*开始,以*/结束Java程序的注释2-2publicclassHello{publicstaticvoidmain(String[]args){
//输出消息到控制台
System.out.println("你好!");}}单行注释以//开始,以行末结束Java编码规范去掉public,程序可以运行,但不规范;规范要求类名必须使用public修饰!classHello{publicstaticvoidmain(String[]args){//输出消息到控制台
System.out.println("你好!");}}publicclasshello{publicstaticvoidmain(String[]args){//输出消息到控制台
System.out.println("你好!");}}常见错误5-1public修饰的类的名称必须与Java文件同名!演示示例:程序排错技巧代码错误publicclassHello{publicstaticmain(String[]args){//输出消息到控制台
System.out.println("你好!");}}常见错误5-2main方法作为程序入口,void必不可少!voidpublicclassHello{publicstaticvoidmain(String[]args){//输出消息到控制台
system.out.println("你好!");}}常见错误5-3编译出错,无法解析system!Java对大小写敏感!代码错误publicclassHelloAccp{publicstaticvoidmain(String[]args){//输出消息到控制台
System.out.println("你好!")}}常见错误5-4每一条Java语句必须以分号结束!;代码错误publicclassHelloAccp{publicstaticvoidmain(String[]args){//输出消息到控制台
System.out.println("你好!);}}常见错误5-5注意:不要漏写引号!"小结2程序运行出现了问题,怎么办?如何定位错误代码的位置?如何知道错误的原因?编程输出以下信息,并添加必要注释*********************************************
欢迎进入Java编程世界*********************************************总结什么是计算机程序?Java相关的技术有哪些?Java可以编写哪两类程序?Java程序的基本框架是什么?使用Eclipse开发Java程序的步骤是什么?
如何在控制台输出一条信息?第2章Java语言基础1标识符和关键字2变量和常量3基本数据类型4运算符5表达式、语句和语句块回顾纠正代码中的错误,输出“早上好!”说出使用Eclipse开发Java程序的步骤?publicclassTest{publicvoidmain(String[]args){system.out.println("早上好!");}}staticSystem中S要大写预习检查为什么需要变量?Java定义的常用数据类型有哪些?举例说明?“%”和“/”分别执行什么运算?升级Java应用程序“Hello”:输出学生相关信息实现运算功能:计算成绩差计算成绩平均分本章任务掌握变量的概念会使用常用数据类型int,double,char,String会使用基本运算符赋值运算符,算术运算符会进行数据类型转换本章目标电脑使用内存来记忆计算时所使用的数据内存如何存储数据?内存像旅馆数据各式各样,要先根据数据的需求(即类型)为它申请一块合适的空间1、开房间(单人间、双人间、总统套间)2、入住√回顾内存如何存放数据1000*(1+5%)内存10001050变量:一个数据存储空间的表示对于专业程序员,数据存入内存不算完:怎么找到存入的数据?存进去还能改吗?98.76不同数据存入具有不同内存地址的空间,相互独立变量在银行存1000元钱,银行一年的利息5%,那一年之后钱变成了多少?内存地址不好记,怎么办?通过内存中小房间的别名找到数据存储的位置变量是存储数据的一个基本单元房间房间名字房间类型入住的客人变量变量名变量类型变量值为什么需要变量对应变量应用1、在内存中存储本金1000元2、显示内存中存储的数据的值publicclassHelloAccp1{publicstaticvoidmain(String[]args){
intmoney=1000;//存数据
}}数据类型变量名内存空间存的数值演示示例:如何存取变量System.out.println(money);//使用数据变量的声明和赋值使用变量的步骤:第一步:声明一个变量第二步:赋值第三步:使用变量数据类型变量名=数值;根据类型开辟空间将数据存入空间取出数据使用数据类型变量名;变量名=数值;intmoney=1000;intmoney;money=1000;数据属于不同类别非洲Thequickbrownfoxtrue
数据非数值数值整型非整型9002.129999/12/20032.175123陈扬char非数值数值整型int…………double非整型StringJava常用数据类型数据类型数据类型说明char(字符型)用于存储单个字符如:性别‘男’、‘女’,电灯‘开’、‘关’int(整型)用于存储整数如:一天的时间是24小时,一月份有31天double(双精度)用于存储小数如:蒙牛早餐奶的价格1.3元,手机待机时间6.5小时String(字符串)用于存储一串字符如:“我的爱好是踢足球”,“我喜欢Java程序”
数据类型说明数据类型的使用输出Java课考试最高分:98.5输出最高分学员姓名:张三输出最高分学员性别:‘男’publicclassHelloAccp2{publicstaticvoidmain(String[]args){
doublescore=98.5;Stringname="张三";
charsex='男';System.out.println("本次考试成绩最高分:"+score);//输出其他……}}单引号双引号完整代码演示连接输出信息演示示例:不同类型变量存取1、字母2、下划线‘_’3、‘$’
符号首字母任意多的:1、数字2、字母3、下划线‘_’4、‘$’符号其余部分变量名Java语言中,变量命名要符合一定规则money,score,name,sex变量命名规范:简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的首字母大写。例如:myScore变量命名规则2-1变量命名规则2-2检查下面这些是否是合法的变量名principalcost_pricemarks_3$lastnamecity123ratediscount%zipcodeCityint××××publicclassHelloAccp3{publicstaticvoidmain(String[]args){Stringtitle;System.out.println(title);}}Stringtitle;//声明变量titletitle="Java";//赋值Stringtitle="Java";//声明变量title并赋值12先声明变量并赋值,然后才能使用常见错误1代码错误正确方案变量名不能以%开始常见错误2publicclassHelloAccp4{publicstaticvoidmain(String[]args){int%hour=18;System.out.println(%hour);}}代码错误publicclassHelloAccp5{publicstaticvoidmain(String[]args){Stringname="张三";Stringname="李四";}}声明两个同名变量导致编译错误Stringname="张三";StringName="李四";Java程序区分大小写常见错误3正确方案小结1使用变量存储以下MP3信息,并打印输出品牌(brand):爱国者F928重量(weight):12.4电池类型(type):内置锂电池价格(price):499
参考代码定义变量有哪两种方式?某班的A学员Java成绩是80分,B学员与A学员成绩相同,输出B学员成绩intaScore=80;intbScore;aScore=bScore;System.out.println(bScore);bScore=aScore;//将右边的值给左边的变量赋值运算符完整代码演示aScorebScore8080副本赋值运算符2-1代码错误变量名表达式;赋值运算符2-2=Z=(X*2)+(5–Y)表达式表达式表达式赋值运算符表达式举例算术运算符3-1基本的算术运算某学员3门课成绩如右表所示,编程实现:
1、Java课和SQL课的分数之差
2、3门课的平均分操作数操作数运算符+-*/%课程分数STB89Java90SQL60
publicclassHelloAccp7{publicstaticvoidmain(String[]args){intstb=89;//STB分数
intjava=90;//Java分数
intsql=60;//SQL分数
intdiffen;//分数之差
doubleavg;//平均分
//省略输出成绩单代码……
diffen=java-sql;//计算java课和sql课的成绩差
System.out.println("Java和SQL的成绩差:"+diffen);
avg=(stb+java+sql)/3;//计算平均分
System.out.println("3门课的平均分是:"+avg);}}声明变量完整代码演示算术运算符3-2演示示例:算术运算符的使用intnum1=5;intnum2=2;inta=num1%num2;intb=num1/num2;System.out.println(num1+"%"+num2+"="+a);System.out.println(num1+"/"+num2+"="+b);num1++;num2--;System.out.println("num1="+num1);System.out.println("num2="+num2);5%2=15/2=2下面代码片断的输出结果是什么?输出%:求余数/:求商等价于:num1=num1+1;等价于:num2=num2-1;num1=6num2=1输出完整代码演示算术运算符3-31、根据天数(46)计算周数和剩余的天数2、已知圆的半径radius=1.5,求其面积参考代码参考代码小结2intnum1=9;intnum2=3;inta=num1%num2;doubleb=num1/num2;System.out.println(num1+"%"+num2+"="+a);System.out.println(num1+"/"+num2+"="+b);num1++;num2--;System.out.println(“num1=”+(++num1));System.out.println(“num2=”+(num2--));9%3=09/3=3.0下面代码片断的输出结果是什么?输出%:求余数/:求商等价于:num1=num1+1;等价于:num2=num2-1;num1=11num2=2输出上次内容回顾本次课内容1.数据类型转换2.条件运算符3.布尔类型变量4.关系运算符5.语句块1.自动类型转换某班第一次Java考试平均分81.29,第二次比第一次多2分,计算第二次考试平均分?
doublefirstAvg=81.29;//第一次平均分
doublesecondAvg;//第二次平均分
intrise=2;secondAvg=firstAvg+rise;
System.out.println("第二次平均分是:"+secondAvg);完整代码演示在某种条件下,系统自动完成类型转换两种类型兼容例如:int和double兼容目标类型大于源类型例如:double型大于int型对于表达式如果一个操作数为double型,则整个表达式可提升为double型类型提升规则
intage=19;charsex=‘女’;
charresult=age+sex;
下面语句正确吗?inta=10;intb=10.2;doublec=10;c=a;intd=c;int不可以自动转换成chardouble不可以自动转化成int常见错误intbefore=20;//apple笔记本市场份额doublerise=9.8;//增长的份额intnow=before+rise;//现在的份额intnow=before+(int)rise;去年Apple笔记本所占的市场份额是20,今年增长的市场份额是9.8,求今年所占的份额?编译出错:不能完成自动类型转换(类型名)表达式强制类型转换intb=(int)10.2;doublea=10;intc=(int)a;1.强制类型转换更改为演示示例:强制类型转换强制类型转换完整代码演示实现一个数字加密器,加密规则是:加密结果=(整数*10+5)/2+3.14159
加密结果仍为一整数参考代码小结3条件运算符(“?:”)是唯一的三元运算符,有3个操作数参与运算。与C语言中的使用规则是完全一致的。条件运算格式如下:表达式1?表达式2:表达式3;2.条件运算符条件运算符根据“表达式1”的值来决定最终表达式的值是“表达式2”的值,还是“表达式3”的值。“表达式1”的值是布尔类型值,如果其值是true,那么“表达式2”的值是最终表达式的值;如果“表达式1”的值是false,那么“表达式3”的值是最终表达式的值。例如:intmin,x=8,y=10;min=(x<y)?x:y;//结果是min取x和y中较小值,即min的值是8用什么数据类型能表示一件商品是真货还是假货一个条件成立还是不成立boolean(布尔)类型boolean类型的值:真:true假:falseboolean类型只有这两个值?3.为什么需要boolean类型1、用boolean类型描述:学员张三的考试成绩是否比学员李四(80分)高3.如何使用boolean类型intliSi=80;//学员李四成绩booleanisBig;//声明一个boolean类型的变量
Scannerinput=newScanner(System.in);
System.out.print("输入学员张三成绩:");//提示要输入学员张三的成绩int
zhangSan=input.nextInt();//输入张三的成绩
isBig=zhangSan>liSi;//将比较结果保存在boolean变量中System.out.println("张三成绩比李四高吗?"+isBig);//输出比较结果存储比较结果条件表达式从控制台接收一个整数演示示例1:用boolean变量描述信息比较高低、大小、长短张三的考试成绩是否比李四高大象是否比乌龟更长寿篮球跟地球一样大吗如何比较?使用关系运算符可以比较高低、大小、长短?4.为什么使用关系运算符4.什么是关系运算符常用的关系运算符有哪些:>,<==,!=>=,<=大象的寿命<乌龟的寿命真张三的成绩>李四的成绩假令狐冲每次考试成绩>=90分真篮球的大小==地球的大小假由此看出关系运算符的作用:用来做比较运算比较后结果:boolean类型5表达式、语句和语句块
表达式表达式是运算符、变量、字面值、方法调用等元素的任意有效组合,每个表达式经过运算最终都是一个值
当表达式中混合使用类型兼容的不同数值类型时,它们都通过类型升级规则被转换为同一类型
5表达式、语句和语句块书写表达式有下列注意事项:·
操作数的类型必须与运算符匹配,例如,只有数值才能执行算术运算,只有boolean值才能进行逻辑运算。·
使用()可以增加括号中的运算次序,使用多余的()不会引发错误,也不会减慢计算,但可使计算顺序清晰,增强可读性。例如,(2>3)&(5<6)比2>3&5<6更易读,尽管括号是多余的。·Java中[]和{}有特殊的含义,不能象()那样用在表达式中改变运算次序。但可以使用嵌套的(),嵌套
()按照从内向外的顺序计算。·
≤、≥、≠必须写成<=、>=、!=,比较运算的相等符号必须写成==
5表达式、语句和语句块语句Java程序由语句组成,每个语句是一个完整的执行单元,以分号结尾下列表达式后面加分号以后就成了语句,称为表达式语句
·
赋值表达式
·
变量的++和--运算
·
方法调用
·
对象创建表达式5表达式、语句和语句块例如:inta=1+2;//赋值语句a++;//相当于a=a+1;System.out.println(“HelloWorld!”);//方法调用语句newPerson();//对象创建语句声明语句用来声明变量的数据类型。例如:
doublevalue;//声明了double型变量value5表达式、语句和语句块语句块及作用域
语句块由一对{}以及其中的语句组成
每个语句块定义了一个作用域,在作用域内定义的变量是局部变量,局部变量只有在语句块内具有可见性
外层作用域定义的变量在内层作用域中可见,反之,内层作用域定义的变量对外层作用域不可见
5表达式、语句和语句块
publicclassA{publicstaticvoidmain(String[]args){inti=0; { intj=0;//语句块外定义的变量在语句块内具有可见性
System.out.println(i); } i=5; //j=10;//语句块内定义的变量在语句块外不可见
}}7输入和输出数据
Java使用下列语句向控制台输出数据:System.out.println();//输出数据后换行
System.out.print();//输出数据后不换行
从JavaSE5.0开始,Java类库中增加的Scanner类允许通过控制台从键盘读取输入数据。通过控制台输入数据,首先必须按如下方式创建Scanner的对象:
Scannerin=newScanner(System.in);
7输入和输出数据Scanner类的常用方法如下:
StringnextLine()//读取输入的下一行内容Stringnext()//读取输入的下一个单词
intnextInt()//读取输入的下一个整数字符序列
doublenextDouble()//读取输入的下一个浮点数字符序列
booleannextBoolean()//读取输入的下一个布尔字符序列
7输入和输出数据控制台读取两行数据,第1行整行读取字符串,第2行分别读取整数、浮点数和布尔值
importjava.util.Scanner;publicclassExample2_6{ publicstaticvoidmain(String[]args){ Scannerin=newScanner(System.in); Strings=in.nextLine(); inti=in.nextInt(); doubled=in.nextDouble(); booleanb=in.nextBoolean(); System.out.println("s="+s); System.out.println("i="+i); System.out.println("d="+d); System.out.println("b="+b); }}什么是变量?如何声明变量、给变量赋值和使用变量?Java中常用的数据类型有哪些?算术运算符中“/”和“%”的区别是什么?发生自动类型转换的条件是什么?如何进行强制类型转换?总结第3章控制语句1分支语句2循环语句3转移语句
1、如果令狐冲的Java考试成绩大于90分,师父就奖励他一本武功秘笈为什么需要if条件结构使用if条件结构可以解决什么是if条件结构if条件结构是根据条件判断之后再做处理if(条件){//语句}if(令狐冲Java成绩>90){
师父奖励令狐冲;}结合问题2基本的if条件结构表达式语句假真如何使用if条件结构1-1回顾:如果令狐冲的Java考试成绩大于90分,师父就奖励他《独孤九剑》剑谱使用if条件结构该如何实现importjava.util.Scanner;publicclassHelloAccp2{publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);System.out.print("输入令狐冲的Java成绩:");
intscore=input.nextInt();//令狐冲的Java成绩
if
(score>90){//判断是否大于90分
System.out.println("师父说:不错,给你《独孤九剑》剑谱");}}}演示示例2:使用基本if条件结构如何使用if条件结构1-2
2、令狐冲Java成绩大于90分,而且音乐成绩大于80分,师父奖励他;或者Java成绩等于100分,音乐成绩大于70分,师父也可以奖励他分析:怎样把多个条件连接起来?使用逻辑运算符运算符表达式说明&&条件1&&
条件2仅仅两个条件同时为真,结果为真||条件1||条件2只要两个条件有一个为真,结果为真!!条件条件为真时,结果为假条件为假时,结果为真问题2的条件如何编写如何使用if条件结构1-3多使用小括号()控制优先级score1>90&&score2>80||score1==100&&score2>70运算符的优先级:最高的优先级:小括号,即()最低的优先级:赋值运算符,即=优先级顺序:!>算术运算符>比较运算符>&&>||publicclassHelloAccp3{publicstaticvoidmain(String[]args){intscore1=100;//令狐冲的语文成绩
int
score2=72;//令狐冲的历史成绩
if((score1>90&&score2>80)
||(score1==100&&score2>70)){System.out.println("师父说:不错,给你《独孤九剑》剑谱");}}}?如何使用if条件结构1-4
3、如果令狐冲考试成绩大于90分,师父就奖励他《独孤九剑》,否则师父就罚他上思过崖闭关思过使用两个基本if条件结构使用if-else条件结构实现if(score>90){System.out.println("师父说:不错,给你《独孤九剑》剑谱");}if(score<=90){System.out.println("师父说:不孝徒,上思过崖闭关思过去吧");}如何使用if条件结构1-5
if-else条件结构if(条件){//语句1}else{//语句2}if(令狐冲考试成绩>90){
师父奖励令狐冲;}else{
师父罚他闭关思过;}结合问题4真表达式语句1假语句2使用if-else条件结构解决问题3publicclassHelloAccp3{publicstaticvoidmain(String[]args){intscore=89;//令狐冲的语文成绩
if(score>90){ System.out.println("师父说:不错,给你《独孤九剑》剑谱");}else{ System.out.println("师父说:不孝徒,上思过崖闭关思过去吧");}}}演示示例4:使用if-else结构如何使用if条件结构1-6小结1说出已学过的数据类型有哪些?int、double、char、boolean、String举例说明已学过的运算符有哪些?赋值运算符、算术运算符、条件运算符、逻辑运算符if和if-else条件结构执行的顺序是什么?if:如果条件表达式成立,执行语句if-else:如果条件表达式成立,执行语句1,如果不成立,执行语句21、小布什买了一筐鸡蛋,如果坏蛋少于5个,他就吃掉,否则他就去退货2、要求用户输入两个数a、b,如果a能被b整除或a加b大于1000,则输出a,否则输出b参考代码小结1参考代码为什么使用多重if结构
4、对学员的结业考试成绩评测成绩>=90:优秀成绩>=80:良好 成绩>=60:中等成绩<60:差使用多重if结构多重if结构就是在else部分中还包含其他if块什么是多重if结构
if
(条件){//语句
}
elseif
(条件){//语句
}else{//语句
}可以有多个可以省略多重if结构假真真假表达式1语句1表达式2语句2语句3如何使用多重if结构使用多重if结构解决问题4
int
score=70;//考试成绩
if(score>=90){
System.out.println("优秀");}
elseif(score>=80){
System.out.println("良好");}
elseif(score>=60){
System.out.println("中等");}
else{
System.out.println("差");}大于等于90分大于等于60分,小于80分小于60分大于等于80分,小于90分演示示例5:使用多重if结构为什么使用switch结构
5、令狐冲参加比武大会如果获得第一名,将出任武林盟主如果获得第二名,将出任武当掌门如果获得第三名,将出任峨嵋掌门否则,将被逐出师门使用if条件结构如何实现实现代码更好的解决办法:使用switch结构解决switch(表达式){
case
常量1:
语句;
break;
case
常量2:
语句;
break;
default:
语句;}switch结构什么是switch结构计算表达式的值如果等于常量1
如果等于常量2
如果没有找到匹配的值
使用switch结构解决问题5如何使用switch结构intmingCi=1;switch(mingCi){
case
1:System.out.println("出任武林盟主");
break;
case2:System.out.println("出任武当掌门");
break;
case3:System.out.println("出任峨嵋掌门");
break;
default:System.out.println("被逐出师门");}第一名的情况下第二名的情况下第三名的情况下其他情况下演示示例6:使用switch结构常见错误3-1intmingCi=1;switch(mingCi){
case1:System.out.println("出任武林盟主");
case2:System.out.println("出任武当掌门");
case3:System.out.println("出任峨嵋掌门");
default:System.out.println("被逐出师门");}输出结果是什么?如果需要每个case执行完后跳出,在每个case后不要忘记写break;演示示例7:完整代码常见错误3-2int
mingCi=1;switch(mingCi){
case1:System.out.println("出任武林盟主");
case2:System.out.println("出任武当掌门");
case2:System.out.println("出任峨嵋掌门");
default:System.out.println("被逐出师门");}case后面的常量必须各不相同代码错误常见错误3-3Stringday="星期一";switch(day){
case"星期一":System.out.println("星期一:青菜");
break;
case"星期二":System.out.println("星期二:鱼");
break;……
default:}……switch后面小括号中表达式的值必须是整型或字符型演示示例8:完整代码代码错误比较switch和多重if结构相同点不同点switch多重if都可以实现多分支结构只能处理等值的条件判断,且条件是整型变量或字符变量的等值判断处理在else部分还包含其它if结构,特别适合某个变量处于某个区间时的情况小结2输入赵本山的考试成绩,显示所获奖励成绩==100分,爸爸给他买辆车成绩>=90分,妈妈给他买MP490分>成绩>=60分,妈妈给他买本参考书成绩<60分,什么都不买参考代码张三为他的手机设定了自动拨号按1:拨爸爸的号按2:拨妈妈的号按3:拨爷爷的号按4:拨奶奶的号编程实现此业务参考代码总结什么数据类型可以描述真和假?描述几种分支结构的语法和执行过程?什么情况下会使用多重if条件结构?多重if条件结构和switch结构的区别和适用场合是什么?
1、盈盈为了考验令狐冲夺冠的决心,要他说一百遍“我能行!”
System.out.println("第1次说:我能行!");System.out.println("第2次说:我能行!");……System.out.println("第100次说:我能行!");100条2、盈盈要他说10000遍“我是最棒的!”,怎么办?为什么需要循环2-1演示完整代码为什么需要循环2-2System.out.println("我是最棒的!");System.out.println("我是最棒的!");System.out.println("我是最棒的!");System.out.println("我是最棒的!");System.out.println("我是最棒的!");System.out.println("我是最棒的!"); ……System.out.println("我是最棒的!");int
i=1;while(i<=100){ System.out.println(
"我能行!");
i++;}i<=10000
"我是最棒的!");没有使用循环结构使用while循环演示示例2:使用循环结构解决问题1什么是循环生活中的循环打印50份试卷10000米赛跑旋转的车轮循环结构的特点循环结构
循环条件循环操作锲而不舍地学习什么是while循环特点:先判断,再执行while(循环条件
){
循环操作}符合条件,循环继续执行;否则,循环退出循环中被重复执行的操作int
i=1;while(i<=30
){
System.out.println("我能行!"); i++;}编码规范:缩进、换行循环操作循环条件真假3、如何用程序描述下面这个故事呢?为了备战,令狐冲锲而不舍地练习,盈盈严格把关…“盈盈,怎么样,可以了吗?”“不行,高音部分唱得还不是很好,钢琴还要继续练啊!”没有听到“很棒”的评价,看来革命尚未成功,令狐冲并不气馁:早上5点练声,上午练钢琴,下午到声乐老师家练习唱歌,晚上练习舞蹈基本功。循环条件循环操作使用while循环的步骤1、分析循环条件和循环操作2、套用while语法写出代码3、检查循环是否能够退出怎样使用while循环3-1怎样使用while循环3-2System.out.print("表演得怎么样
?(y/n):");answer=input.next();while(!answer.equals("y"))
{ System.out.println("早上5点开始练声
!"); System.out.println("上午练习钢琴
!"); System.out.println("下午到声乐老师家练习唱歌
!");
System.out.println("晚上练习舞蹈基本功!");
System.out.print("表演得怎样
?(y/n):"); answer=input.next();}System.out.println("圆满完成
!");循环条件循环操作比较两个String类型的值是否相等演示示例3:使用while循环结构
怎样使用while循环3-3
4、录入班级人数和学员成绩,计算班级学员的平均成绩循环条件:目前录入的成绩数目小于总人数循环操作:录入学生成绩,并累加求和演示示例4:使用while循环结构
while(i<=stuNum){System.out.print("请输入学号"+i+"的成绩:");score=input.nextInt();sum=sum+score;i++;}avg=sum/stuNum; while循环常见问题3-1/*打印4次“欢迎ACCP学员”*/publicstaticvoidmain(String[]args){ inti=0;
while(i<4){ System.out.println("欢迎ACCP学员");
i++; }}永远都不会退出的循环称为死循环循环一直执行,不会退出,哪里出错了?while循环常见问题3-2/*打印4次“欢迎ACCP学员”*/publicstaticvoidmain(String[]args){ inti=1;
while(i<4){System.out.println("欢迎ACCP学员");i++; }}i<=4只打印了三次,哪里出错了?注意检查循环次数是否满足需求while循环常见问题3-3/*打印4次“欢迎ACCP学员”*/publicstaticvoidmain(String[]args){inti=0;while(i>5){System.out.println("欢迎ACCP学员");i++;}}注意:如果一开始条件就不满足,while循环一次都不执行
i<5一次都没有打印,哪里出错了?
2006年培养学员8万人,每年增长25%,请问按此增长速度,到哪一年培训学员人数将达到20万人?提示:
1、循环条件和循环操作分别是什么?2、intyear=2006;doublestudents=80000;while…3、2007年培训学员数量=80000*(1+0.25)小结1do-while循环5、如何用程序讲述下面的故事?苦练半年,眼看大赛在即,盈盈提议:彩排一次,如果很令人满意,以后就不用彩排了,否则每天都要彩排,直到现场表现让她满意为止!他能否用动听的歌声震撼盈盈,用美妙的钢琴声博得赞赏呢?……do{
循环操作}while(循环条件);while(循环条件){
循环操作}while循环先判断,再执行不适合描述此故事?什么是do-while循环do{
循环操作}while(循环条件
);先执行一遍循环操作符合条件,循环继续执行;否则,循环退出特点:先执行,再判断循环操作循环条件真假怎样使用do-while循环2-1do{ System.out.println("唱歌
!"); System.out.println("演奏肖邦钢琴曲
!"); System.out.print("可以了吗
?(y/n):"); answer=input.next();}while(!answer.equals("y")
);System.out.println("大功告成
!");循环条件先执行一遍循环操作演示示例5:使用do-while循环结构怎样使用do-while循环2-26、连续录入学生姓名,输入“q”则系统退出Stringname;Scannerinput=newScanner(System.in);do{ System.out.print("请输入学生姓名:"); name=input.next();}while
(!name.equals("q"));System.out.println("程序结束");演示示例6:使用do-while循环结构while循环和do-while循环的区别语法不同初始情况不满足循环条件时while循环一次都不会执行do-while循环不管任何情况都至少执行一次do{
循环操作}while(循环条件);while
(循环条件){
循环操作}先判断,再执行先执行,再判断比较while和do-while小结2使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。转换关系:华氏温度=摄氏温度*9/5.0+32参考代码提示:
1、循环操作:计算摄氏温度,并输出对照条目2、循环条件:条目<=10&&摄氏温度<=2507、使用do-while打印5次“你好ACCP学员!”inti=1;do{ System.out.println("你好ACCP学员!");
i=i+1;
}while(i<5);完整代码只打印了4次!怎么查找错误呢?总结循环结构的特点是什么?while循环和do-while循环有什么区别?为什么使用for循环2-1回顾问题1:令狐冲说一百遍“我最棒”
回顾问题2:根据人数和成绩,计算平均成绩解决:使用while循环共同点:确定的循环次数更优解决:for循环结构为什么使用for循环2-2
inti=0;while(i<100){System.out.println("我最棒");i++;}
for(inti=0;i<100;i++){System.out.println("我最棒");}
for比while更简洁while循环结构for循环结构for循环的语法和执行顺序什么是for循环for(;;){;}条件为true循环体被执行for(inti=0;i<100;i++){System.out.println("我最棒");}代码规范:格式对齐、代码的缩进表达式1表达式2表达式3循环操作参数初始化条件判断更新循环变量1243如何使用for循环3-11、循环录入某学员S1的5门课成绩,计算平均分循环次数:5循环条件:循环的次数不足5,继续循环循环操作:录入成绩,计算成绩之和使用for循环结构的步骤1、分析循环条件和循环操作2、套用for语法写出代码3、检查循环是否能够退出结合问题1如何使用for循环3-2
//省略声明变量
for(inti=0;i<5;i++){//循环5次录入5门课成绩
System.out.print("请输入5门功课中第"+(i+1)+"门课的成绩:");score=input.nextInt();sum=sum+score;}avg=sum/5;//计算平均分
System.out.println(name+"的平均分是:"+avg);初始值:i=0循环条件:i<5循环变量改变:i++循环操作执行5次演示示例1:使用for循环结构完整代码如何使用for循环3-3
2、输出如图所示加法表for(inti=0,j=val;i<=val;i++,j--){System.out.println(i+"+"+j+"="+(i+j));}1、循环初始化:i=0;j=输入值2、循环条件:i<=输入值3、循环操作:计算i+j4、循环变量的改变:i++,j--表达式3可以是用“,”隔开的多个表达式,运算顺序从左到右表达式1中可以声明多个同一类型的值并赋值,用“,”隔开演示示例2:使用for循环结构for循环常见问题4-1for(;i<10;i++){
System.out.println("这是"+i);}inti=0;编译错误:变量i没有初始化for(<初始化循环变量>;<循环条件>;<修改循环变量的值>){
<循环体语句>;}不能省略可省略表达式1省略,循环变量的初始值在for语句之前由赋值语句取得for循环常见问题4-2for(inti=0;;i++){
System.out.println("这是"+i);}编译正确,但是缺少循环条件,造成死循环for循环常见问题4-3for(inti=0;i<10;){
System.out.println("这是"+i);
}i++;省略表达式3,在循环体内应设法改变循环变量的值以结束循环编译通过,但是循环变量的值无变化,造成死循环for循环常见问题4-4for(;;){
System.out.println("这是测试");}表达式全省略,无条件判断,循环变量无改变,应在循环体内设法结束循环,否则会造成死循环死循环小结1求1~100之间不能被3整除的数之和(使用for循环结构)参考课堂案例3/S1JAVACHP5/src/HelloAccp12.java-代码为什么需要break语句inti=2;switch(i){case1:System.out.println("星期一");
break;case2:Syste
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村房屋拆除合同样本
- 中石油合作合同样本
- 修建简易合同标准文本
- 买房退款合同标准文本
- 第11讲 人体的呼吸 2025年会考生物学专题练习(含答案)
- 仓储补充协议合同样本
- 买卖花椒合同样本
- 学生志愿服务活动安排计划
- 公积金要求合同标准文本
- 农场安装家具合同样本
- 空压机每日巡检记录表-
- 桩基工程技术标投标文件(技术方案)
- 2024年吉林水利电力职业学院高职单招职业技能测验历年参考题库(频考版)含答案解析
- 2025年重庆联合产权交易所集团招聘笔试参考题库含答案解析
- 广西电力职业技术学院《外国刑法》2023-2024学年第一学期期末试卷
- 科技安全课件
- 2024年屠宰场屠宰加工业务承包经营协议3篇
- 双通道脊柱内镜技术临床应用专家共识(2024版)解读
- 婚姻家庭矛盾纠纷排查工作总结六篇
- 十八项医疗核心制度考试题与答案
- 《三只松鼠公司基于哈佛框架的财务探析(13000字论文)》
评论
0/150
提交评论