《课Java语言基础》PPT课件.ppt

上传人:za****8 文档编号:12725276 上传时间:2020-05-19 格式:PPT 页数:45 大小:306.06KB
返回 下载 相关 举报
《课Java语言基础》PPT课件.ppt_第1页
第1页 / 共45页
《课Java语言基础》PPT课件.ppt_第2页
第2页 / 共45页
《课Java语言基础》PPT课件.ppt_第3页
第3页 / 共45页
点击查看更多>>
资源描述
JAVA程序设计,回顾,JVM是Java编程语言的核心。Java运行时环境(JRE)包含一方面与硬件交互、另一方面又与程序交互的JVM。Java是完全面向对象的语言,所有的实现必须放在类中。main函数是Java应用程序执行的入口。JDK可用于开发Java程序。,目标,了解Java的基本类型掌握如何定义标识符掌握Java的关键字了解并掌握String类掌握Java的程序控制流程掌握如何使用帮助文档,第二课Java基本语法,2.1变量2.2操作符2.3字符串2.4控制流小结习题,本章我们将学习Java编程语言的基本语法,包括变量、操作符、表达式、语句、字符串、数组、控制流以及如何使用帮助文档。使用下面的编程框架:publicclassTestSketchpublicstaticvoidmain(Stringargs)/以下添加测试代码.,2.1变量,所谓变量,就是由标识符命名的数据项。每个变量都必须声明数据类型,变量的数据类型决定了它所能表示值的类型以及可以对其进行什么样的操作。变量既可以表示基本数据类型(如整型int、字符型char等)的数据,也可以表示对象类型(如字符串)的数据。当变量是基本数据类型时,变量中存储的是数据的值,而当变量是对象(引用)类型时,变量中存储的是对象的地址,该地址指向对象在内存中的位置。,2.1.1基本数据类型,2.1.1.1整型2.1.1.2浮点类型2.1.1.3字符类型2.1.1.4布尔类型,2.1.1.1整型,Java语言中提供了四种整型数据类型:byte、short、int和long,许多语言中,基本数据类型的格式和大小与程序运行的平台有关,这是产生程序跨平台困难的主要原因之一。Java语言中,对每种基本数据类型都限定了固定的格式和大小,因此消除了数据类型对平台的依赖性。,例子,intsalary=197;longsalary=197L;longsalary=197L;测试:publicclassTestSketchpublicstaticvoidmain(Stringargs)/以下添加测试代码intsalary=197;longsalary=197L;(注:salary重复定义),2.1.1.2浮点类型,浮点类型用来表示有小数的数值。分为两类,单精度浮点类型和双精度浮点类型三个特殊值,正无穷、负无穷和非数字Double.POSITIVE_INFINITY(Float.POSITIVE_INFINITY)Double.NEGATIVE_INFINITY(Float.NEGATIVE_INFINITY)Double.NaN(Float.NaN),例子,floatmiles=0.9;/Errordoublemiles=0.9;doublemiles=0.9D;doublemiles=0.9d;floatmiles=0.9f;或是floatmiles=0.9F;doubleweight=Double.POSITIVE_INFINITY;,2.1.1.3字符类型,而Unicode编码采用16位的编码方式,因此可以对65536种字符进行编码,能够容纳目前世界上已知的字符集。charkind=I;/给字符变量kind赋值Icharkind=u0049;/给字符变量kind赋I的Unicode编码值/等价于charkind=I;,转义字符,问题:如何在屏幕上输出“Thisisachartest”(双引号也要输出)?,2.1.1.4布尔类型,布尔类型(boolean)的值只有两个true或是false,分别表示真或是假,用于逻辑条件的判断。(实例2-1),在C/C+中,数值也可以充当布尔类型的值:0相当于false,非0值相当于true。这就使得很容易在程序中引入bug,例如下面的if语句:if(age=0)/判断age是否为0在C/C+中是可以编译运行的。但是该语句隐含了一个bug,因为不管age的实际值是什么,总是判定if语句不成立。而在Java中,该语句是不能编译通过的,必须使用:if(age=0)/判断age是否为0,2.1.2变量,变量声明VariableTypevariableName;几条规则(1)变量名称是由Unicode字母或是数字组成的不间断序列(中间不能有空格),长度不限,并且必须以字母开头。(2)变量名称不能是系统关键字(如int、布尔值(true或是false)或是保留字(null)(3)在相同的作用域内(参看下一小节变量作用域),不能重复声明同一变量名。例如:intlength;floatmiles;booleanflag;,2.1.3变量作用域,变量定义所在的位置决定了变量的作用域,根据变量定义所在的位置不同,可以分为以下4类:(实例2-2)(1)类成员变量(2)局部变量(3)方法参数变量(4)异常处理参数变量,2.1.4变量初始化,变量在声明后,可以通过赋值语句对其进行初始化。初始化后的变量仍然可以通过赋值语句赋以其他不同的值。doublesalary;/变量声明salary=200d;/初始化赋值salary=400d;/重新赋值,但不是初始化变量还可以声明及初始化同时进行:doublesalary=200d;需要注意的是,给变量赋值必须类型要匹配,即变量的数据类型要和所赋值的数据类型一致。,final类型,final类型的变量在初始化后就不能再重新对其赋值,常用于表示一些固定不变的值。finaldoublePI=3.1415926;/声明并初始化一个常量PI=3.14;/出错,不能修改已经初始化的常量的值滞后初始化的方法:finaldoubleA_CONSTANT;/声明,未初始化.A_CONSTANT=0.9;/滞后初始化,常量一旦初始化,不能对其重新赋值。习惯上,常量名中所有的字符均大写。,2.2操作符,一元操作符(只能对一个操作数进行运算)二元操作符(对两个操作数进行运算)三元操作符(特殊的运算符,condition?result1:result2,如果第一个操作数condition的值为true,那么取值result1;反之取值result2。例如:min=xy?y:x;),2.2.1算术操作符实例2-3,2.2.2关系与条件操作符实例2-4,关系运算符,条件运算符,2.2.3位操作符,2.2.4其他类型操作符,2.2.5数字类型转换,自动数字类型转换,强制类型转换(实例2-5)doublesalary=103.34;intintSalary=(int)salary;/intSalary的值为103,2.2.6操作符优先级,2.3字符串,字符串是字符组成的序列,用双引号括起来的一个字符序列构成了字符串,如“thisisastring”。字符串不是Java语言中的基本数据类型,而是对象类型(String类的实例)。StringaStr1=Thisisastring;StringaStr2=newString(Thisisastring);StringaStr3=;/空字符串StringaStr4=null;/空值,null是一个特殊的空值,可以赋值给任何对象类型的变量。上面的例子中aStr3和aStr4是不同的,aStr3指向内存中的一个字符串对象(但是该字符串对象中没有任何字符);aStr4由于是一个空值,所以不指向任何字符串对象。字符串被创建后,其中的内容不能再改变。如果要改变字符串的内容,需要重新生成新的字符串对象。,StringaStr=abc;/(1)aStr指向内存中的一个字符串对象abcaStr=xyz;/(2)aStr指向内存中重新生成的一个对象xyz,可以使用打印语句将字符串的内容打印出来,如:StringaStr=abc;System.out.println(aStr);,2.3.1字符串连接,操作符“+”把两个字符串连接起来形成新的字符串StringaStr=abc+xyz;/aStr=abcxyzStringaStr=value=+20;/aStr=value=20StringaStr=value=+true;/aStr=value=trueDoubled=newDouble(33.34);/d是一个对象StringaStr=value=+d;/aStr=value=33.34,2.3.2修改字符串,(1)length()来取得字符串的长度StringaStr=HelloWorld;intsize=aStr.length();/size的值为10(2)charAt(i),该方法返回一个字符值StringaStr=HelloWorld;charaChar=aStr.charAt(0);/aChar=H(3)substring()方法来获取一个字符串的子串:StringaStr=HelloWorld;StringsubStr=aStr.substring(0,4);/subStr=Hell;,2.3.3判断字符串是否相等,StringaStr=HelloWorld!;StringbStr=HelloWorld!;if(aStr=bStr)/错误,这种判断方式是不可靠的.,if(aStr.equals(bStr)/正确.,2.3.4使用帮助文档,例子:查看String类中的charAt()方法的详细使用信息?方法一(如果知道String类位于java.lang包中,那么单击java.lang包名)方法二(如果不知道String类位于哪个包中,单击帮助文档起始页面的index超链接,然后单击S链接)方法三(只知方法名,首先进入按字符排序的页面,然后单击超链接c),2.4控制流,2.4.1if条件语句2.4.2for循环语句2.4.3while/dowhile循环语句2.4.4switch分支选择语句2.4.5break、continue,2.4.1if条件语句,if(条件表达式)语句;.语句;if嵌套举例说明示例2-6,2.4.2for循环语句,循环嵌套无穷循环实例2-7,2.4.3while/dowhile循环语句,while(条件表达式)语句;.语句;do语句;.语句;while(条件表达式);/注意,这里要以分号结束实例2-8,2.4.4switch分支选择语句,switch语句从与选择值相匹配的case标签处开始执行,一直执行到break处(执行break将跳出switch语句)或是switch的末尾。注意,switch只能接收整数类型的值。此外,当传递进来的值与所有的case标签均不匹配时,如果switch中含有default标签,将执行default标签后面的语句;如果default标签也不存在,那么switch中没有任何语句得到执行。实例2-9还有一点需要注意的就是:如果一个case子句后面不加break,那么当该子句执行完毕后,下一个case子句将被继续执行,直至遇到break或是switch语句结束实例2-10,2.4.5break和continue语句,break语句在循环中用于立即从当前循环终止控制。遇到break语句时,将跳出当前循环。continue语句则是从其调用处跳至循环的开始处。continue语句之后的语句将不再执行。break实例2-11continue实例2-12,2.4.5break、continue,breakfor(.)while(.)if(.)break;.abc:for(.)while(.)if(.)breakabc;.,小结2-1,Java具有8种基本数据类型:byte、short、int、long、boolean、char、float及doubleJava中的运算符可划分为四个子集:算术运算符、位运算符、关系运算符、逻辑运算符&运算符适用于如下子集:逻辑和位。逻辑&以条件表达式为操作数,而位&则以数字为操作数,小结2-2,Java支持下列控制结构:选择(if-else、switch)循环(while、do-while、for)跳转(break、continue)break语句在循环中用于立即从当前循环终止控制continue语句则是从其调用处跳至循环的开始处,习题,1.指出下列哪些变量名称是不合法的?tomSalary,float,1people,people1,price_per_mPrice-per_m,$root,rest。解答2.利用JavaApi帮助文档,找到一个可以将给定的字符串转化为小写的方法。习题2-133.根据百分制中的成绩赋值一个字符型分数,即90分之上为A,8089为B,7079为C,6069为D,60以下为F。习题2-144.编程,计算n的阶乘,设n=10。习题2-155.第二题用if-else语句改写。习题2-166.编写程序,输出1100间的所有奇数。习题2-17,习题,7.编写一个程序找到一个自然数k,使得0+1+2+k200。习题2-18,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!