




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章 Java 语法简介内 容 简 介Java语言是一门很优秀的语言,具有面向对象、与平台无关、安全、稳定和多线程等优良特性,是目前软件设计中极为健壮的编程语言。Java语言不仅可以用来开发大型的应用程序,而且特别适合于Internet的应用开发。特别是Java Swing推出之后,不仅使Java的功能更加强大,而且使Java确确实实具备了“一旦写成处处可用”的特点,Java已成为网络时代最重要的语言之一。本书是一本实用教程,配备了大量的例子,叙述详细,通俗易懂,便于自学。针对较难理解的问题,例子都是从简单到复杂,逐步深入,便于读者掌握Java编程技巧。全书分为25章,分别介绍了Java的数据类型、运算符与表达式、字符串处理、Java awt、Java applet、图形处理、图象处理、多线程机制、输入输出流、网络程序、数据库连接、多媒体、Java swing等内容。本书不仅可以作为高等院校教材,也适合自学者及软件开发人员参考使用。目 录第一章 Java 语言入门11.1 Java的诞生11.2 Java的特点11.3 一个Java程序的开发过程11.4 一个简单的Java应用程序的开发过程21.5 一个简单的Java小应用程序(Java Applet)41.6 安装SUN公司的JDK61.7 什么是JSP7习 题 一8第二章 标识符、关键字和数据类型92.1 标识符和关键字92.2 Java语言基本数据类型9习 题 二12第三章 运算符、表达式、语句133.1 运算符与表达式133.2 语句15习 题 三22第四章 类、对象、和接口234.1 编程语言的几个发展阶段234.2 类234.3 对象294.4 访问权限374.5 类的继承394.6 接口42习 题 四44第五章 数组与字符串455.1 声明数组455.2 创建数组455.3 数组元素的使用465.4 数组的初始化465.5 字符串475.6 怎样获取字符串的长度475.7 怎样判断字符串的前缀或后缀与已知的字符串是否相同485.8 怎样比较两个字符串485.9 怎样把字符串转化为相应的数值495.10 怎样将数值转化为字符串505.11 怎样实现字符串检索505.12 怎样得到字符串的子字符串515.13 怎样替换字符串中的字符和去掉字符串的前后空格515.14 怎样获取对象的字符串表示515.15 使用StringTokenizer类分析字符串52习题五531.1 Java 的诞生1995年6月由Sun 公司引进到我们这个世界的革命性的编程语言,被美国的著名杂志PC Magazine评为1995年十大优秀科技产品。之所以称Java为革命性编程语言,是因为传统的软件往往与具体的实现环境有关,一旦环境有所变化就需要对软件作一番改动,耗时费力,而Java编写的软件能在执行码上兼容。这样,只要计算机提供了Java解释器,Java编写的软件就能在其上运行。注:印度尼西亚有一个重要的盛产咖啡的岛屿,中文名叫爪哇,开发人员为这种新的语言起名为Java,其寓意是为世人端上一杯热咖啡。1.2 Java 的特点正在被广泛使用的网络编程语言。它是简单的、面向对象的、稳定的、与平台无关的、解释型的、多线程的、动态的语言。1.3 一个Java程序的开发过程本书的所有程序均在Sun公司的JDK1.2下调试通过。(您可以链接到Sun公司的Web站点,下载JDK的一份拷贝。该站点的URL为:字节码文件由Web浏览器执行由Java解释器执行源文件Java编译器文件名.Java产生对于Java小应用程序对于Java应用程序图1.1 Java程序的开发过程http:/J/product/JDK)注:字节码文件是与平台无关的二进制码,再由解释器解释成本地机器码(解释一句,执行一句)。1编写源文件:使用一个文字编辑器,如Edit或记事本,来编写源文件(不可使用Word编辑器,因它含有不可见字符)。将编好的源文件保存起来,被保存的源文件的扩展名必须是java(你马上就会知道给源文件起名的规定)。2使用Java编译器(javac.exe):编译源文件得到字节码文件(你马上就知道怎样使用javac)。3Java程序分为两类Java应用程序和Java小应用程序:Java应用程序必须通过java解释器(java.exe)来解释执行其字节码文件;Java小应用程序必须通过支持Java标准的浏览器来解释执行(你马上就会知道怎样使用解释器和浏览器来运行程序,普遍使用的Netscape Navigator 和Microsoft Explorer都完全支持Java )。1.4 一个简单的Java应用程序的开发过程1 编写源文件public class Hello public static void main (String args ) System.out.println(你好,很高兴学习Java); 注意:Java源程序中语句所涉及到的小括号及标点符号都是英文状态下输入的括号和标点符号,比如你好,很高兴学习Java中的引号必须是英文状态下的引号,而字符串里面的符号不受汉或英的限制。l 一个Java源程序是由若干个类组成的(如果你学过C语言,你就会知道一个C源程序是由若干个函数组成的)。上面的这个Java应用程序简单到只有一个类,他的名字是由我们起的,叫Hello。l class 是Java的关键字,用来定义类的。public也是关键字,说明Hello是一个public类(我们将会系统的学习类的定义和使用)。第一个大括号和最后一个大括号以及它们之间的内容叫做类体。l public static void main (String args )是类体中的一个方法,之后的两个大括号以及之间的内容被叫做方法体。一个Java应用程序必须有一个类且只有一个类含有main方法(这个类称为应用程序的主类,main也是关键字)。public,static和void分别是对main方法的说明。在一个Java应用程序中main方法必须被说明为public static void。l String args声明一个字符串类型的数组args(注意String的第一个字母是大写的),它是main方法的参数(以后会学习怎样使用这个参数,见5.9)。main方法是程序开始执行的位置。现在将源文件保存到C:1000 中(1000是我们自己建立的一个文件夹)并命名为Hello.java(注意不可写成hello.java,因为Java语言是区分大小写的)。源文件的命名规则是这样的,如果源文件中有多个类,那么只能有一个类是public类。如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是java。如果源文件没有public类,那么源文件的名字只要和某个类的名字相同,并且扩展名是java就可以了。2编译当创建了Hello.java这个源文件后,就要使用Java编译器(javac.exe)对其进行编译。C:1000javac Hello.java编译完成后系统为我们生成一个Hello.class文件,该文件称为字节码文件。.这个字节码文件Hello.class 将被存放在与源文件相同的目录中。如果Java源程序中包含了多个类,那么用编译器javac编译完源文件后将生成多个扩展名为class的文件,每个扩展名是class的文件中只存放一个类的字节码,其文件名与该类的名字相同。这些字节码文件将被存放在与源文件相同的目录中。如果你对源文件进行了修改,那么你必须重新编译,再生成新的字节码文件。注:javac.exe和java.exe被存放在C:jdk1.2.2bin下(如果你在安装时没有另外指定目录的话)。如果你想在任何目录下能使用编译器和解释器,应在dos提示符下键入下列命令:C:path c:jdk1.2.2bin(按回车键)或将path c:jdk1.2.2bin放到autoexec.bat文件中。3运行使用Java解释器(java.exe)运行这个应用程序程序。C:1000java Hello屏幕将显示如下信息:Hello, how are you注意:当Java应用程序中有多个类时,java 后的类名必须是包含了main()方法的那个类的名字。我们再看一个简单的Java应用程序。也许你现在还看不懂这个程序,但你必须知道怎样命名、保存源程序;怎样使用编译器编译源程序;怎样使用解释器运行程序。l 源程序public class people float hight,weight; String head, ear, mouth; void speak(String s) System.out.println(s); class A public static void main(String args) people zhubajie; zhubajie=new people(); zhubajie.weight=200f; zhubajie.hight=1.70F; zhubajie.head=“大头”; zhubajie.ear=两只大耳朵; zhubajie.mouth=一只大嘴; System.out.println(重量+zhubajie.weight+身高 +zhubajie.hight); System.out.println(zhubajie.head+zhubajie.mouth+zhubajie.ear); zhubajie.speak(师傅,咱们别去西天了,改去月宫吧); 我们必须把源文件保存起来并命名为people.java(回忆一下源文件起名的规定)。我们假设你保存people.java在C:1000下。l 编译源文件c:1000javac people.java如果编译成功,你的目录1000下就会有people.class和A.class这两个字节码文件了。如果你对源文件进行了修改,那么你必须重新编译,再生成新的字节码文件。l 执行c:1000java Ajava 后的名字必须是含有main方法的那个类的名字(记住了吗?)。1.5 一个简单的Java小应用程序(Java Applet)1编写源程序import java.applet.*;import java.awt.*;public class boy extends Applet public void paint(Graphics g) g.setColor(Color.red); g.drawString(我一边喝着咖啡,一边学Java呢, 5,10); g.setColor(Color.blue); g.drawString( 我学得很认真,尽管我的对面坐着一个美丽的女孩,5,30); 一个Java applet也是由若干个类组成的,但必须有一个类扩展了Applet类,即它是Applet类的子类。我们把这个类叫做这个Java applet(Java小程序)的主类,Java applet的主类必须是public的(我们将会系统学习类和子类)。Applet类是系统提供的类。一个Java applet不再需要main方法,但必须有一个类扩展了Applet类。当我们保存上面的源文件时,必须命名为boy.java。假设我们保存boy.java在c:1000。注:上述源程序中我们使用了import语句(以后将学习它),这是因为我们要使用系统提供给我们的Applet类。Applet类在包java.applet中(包java.applet中有很多类,Java语言把一些类放在一起叫做一个包,这里java.applet是一个包的包名,关于包以后还会讲解)如果我们不使用 import语句,主类必须写成:public boy extends java.applet.Applet.同样Graphics也是包java.awt中的一个类。2编译c:1000javac boy.java编译成功后,文件夹1000下会生成一个boy.class文件。如果源文件有多个类,将生成多个class文件,都和源文件在同一文件夹里。如果你对源文件进行了修改,那么你必须重新编译,再生成新的字节码文件。3.运行Java applet必须由浏览器来运行,因此我们必须编写一个超文本文件(含有applet标记的web页)通知浏览器来运行这个Java applet。下面是一个最简单的一个html文件,通知浏览器运行我们的Java apple。我们使用记事本编辑如下: 超文本中的标记 和通知浏览器将运行一个Java applet,code通知浏览器运行哪个Java applet。code的“=”后面是主类的字节码文件,当然这个字节码文件的扩展名是class,而它的名字和源文件的名字是相同的。Width,height让我们设计这个Java apple的宽度和高度(单位是象素)。要想让浏览器运行一个Java applet, 标记中的code,height,width都是必须的(另外还有一些可选的项,如:vspace,设置小程序与其周围对象的垂直距离,hspace,设置水平距离等等)。现在我们把上面编辑的文件命名为boy.html(扩展名必须是html,名字不必是 boy,你可以起一个你喜欢的名字)。把boy.html保存在C:1000.即和boy.class在同一目录里。如果不是这样,你必须在文件boy.html中增加选项:codebase,来指定你的小程序中的.class文件所在的目录。现在你可以使用浏览器打开文件boy.html来欣赏你的小程序了。注:也可以使用JDK提供的appletviewer来调试小程序,如,在DOS命令行执行:c:1000appletviewer boy.html(回车)注:假如你不熟悉html文件的编写,你可以花半个小时看看这方面的书。下面是一个略复杂的 html 文件。你可以把它保存为boy1.html放在1000目录下,然后用浏览器打开它。注:g.drawString(“我一边喝着咖啡,一边学Java呢”,5,10)的作用是在程序中画字符串,数字5和10的意思是:从距小程序左面5个像素,距上面10像素的位置开始从左到右的方向画字符串:“我一边喝着咖啡,一边学Java呢”(见17章)。 Tom &Jerry 我是谁呢?让我想一想! 如果你感兴趣就按照上面的步骤再进行下面的例子。import java.applet.*;import java.awt.*; class people float hight,weight; String head, ear, mouth; String speak(String s) return s; public class cat extends Applet people zhubajie;String s;public void init() s=师傅,咱们别去西天了,改去月宫吧; zhubajie=new people(); zhubajie.weight=200f; zhubajie.hight=1.70F; zhubajie.head=“大头”; zhubajie.ear= 两只大耳朵; zhubajie.mouth= 一只大嘴; public void paint(Graphics g) g.setColor(Color.green); g.drawString( 重量+zhubajie.weight+ 身高+zhubajie.hight,10,10); g.drawString(zhubajie.head+zhubajie.mouth+zhubajie.ear,10,30); g.drawString(zhubajie.speak(s),20,50); l C1000javac cat.javal 将下列超文本文件存在C:1000下,起名为cat.html。 用浏览器打开cat.html或在命令行执行:c:1000appletviewer cat.html(回车)1.6 安装SUN公司的JDK如果你购买某些Java书,可能会得到一个含有JDK的光盘(例如:Java 2图形设计,David M.Geary 编著,马欣民等译,机械工业出版社出版)。JDK光盘里有三个子目录:MACINTOSH、SOLARIS和WINDOWS。每个子目录中都包含完整的由Sun公司开发的Java开发工具即JDK。下表列出了这张光盘中JDK目录下三个子目录中的内容。表1.1 光盘中JDK目录中的内容目 录内 容MACINTOSH包含Macintosh平台上的JDK,适用于68K和Power PCSOLARIS包含两个子目录,一个是适用于SPARC Solaris的JDK另一个是适用于x86 Solaris的JDKWINDOWS包含适合于x86上的32位Windows操作系统的JDK,即Windows 95和Windows NT操作系统上的JDK1从光盘上安装适合于Windows 95和Windows NT的JDK第一步:删除JDK的老版本。 一般情况下在读者的机器上可能没有老版本的Java开发工具。如果读者在JDK目录下有其它的Java源代码文件(读者编写的或者从别人那里得到的)。那么请读者将这些文件移动到一个新目录中去。以免在删除老版本的JDK时将它们错误地删除了。现在读者可以卸载JDK老版本或直接删除整个Java目录了。第二步:打开JDK包。删除老版本JDK后就可以通过JDK文件自展将JDK包打开。双击jdk1_2-win.exe,就开始安装了。安装的默认路径是:C盘根目录下创建一个名为JDK1.2的目录,在这个目录下打开JDK包。如果希望在其它目录下安装JDK,可以在相应的目录下展开JDK包。打开JDK包的操作将创建Java父目录和2版必需的子目录。如果浏览一下JDK包安装的文件可发现lib目录下和jrelib目录下有几个以.jar为后缀的文件。Jar文件包含能成功地运行Java虚拟机所必须的API类。第三步:更新环境变量。安装JDK 的1.2版本并不需要用户设置环境变量,但是如果有人在这之后设置了其它环境变量,那么你必须要重新设置你的环境变量:SET CLASSPATH=C:jdk1.2jrelibrt.jar;比如,为了能编写出Java多媒体程序,某人从Sun公司站点下载了java的扩展类库:jmf ,为了能使用这个扩展类库,设置了环境变量:SET CLASSPATH=E:LIBSOUND.JAR;E:LIBJMF.JAR;这时你就要把下面的语句加入,SET CLASSPATH=C:jdk1.2jrelibrt.jar;设置CLASSPATH做法是:用文本编辑器打开AUTOEXEC.BAT文件,修改CLASSPATH环境变量,在AUTOEXEC.BAT文件中加入:SET CLASSPATH=C:jdk1.2jrelibrt.jar;2从网络下载JDK除了从光盘中获得JDK以外,还可以从国际互联网上下载JDK。从国际互联网上下载可以获得最新版本的JDK(目前已发布1.3版本)。从网络下载JDK的站点:/products/jdk/1.2/在“Down JDK Software”弹出式菜单中列有可从Sun公司得到的用于各种操作系统上的JDK。从这个弹出式菜单中选出要使用的操作系统。单击弹出式菜单下方的“Download Software”按钮这时遇到一个有许多JDK分发限制的页。读完它,如果同意这些限制,就单击”YES” 按钮进入下载页面。这一页上列出的是一些可下载JDK的站点。选择一个离用户最近的站点,单击该站点就可以开始下载JDK了。下载之后的安装过程和从光盘安装相同。1.7 什么是JSPJSP是Java Server Pages的缩写,是由 Sun公司1999于年推出的一种动态网页技术标准。JSP是基于Java Servlet 以及整个Java体系的Web开发技术,利用这一技术可以建立安全、跨平台的先进动态网站,这项技术还在不断的更新和优化中。你可能对Microsoft的ASP比较熟悉,ASP的全名是Active Server Pages,也是一个Web服务器端的开发环境,可以开发出动态的、高性能的Web服务应用程序。JSP和ASP技术非常相似,ASP的编程语言是VBScript,JSP使用的是Java。与ASP相比,JSP以Java技术为基础,又在许多方面做了改进,具有动态页面与静态页面分离,能够脱离硬件平台的束缚,以及编译后运行等优点,完全克服了ASP的脚本级执行的缺点。我们相信JSP会逐渐成为Internet上的主流开发工具。需要强调的一点是:要想真正地掌握JSP技术,必须有较好的Java基础,但学习Java的目的并不只是为了掌握JSP。可以访问Sun公司的站点:详细了解JSP。习 题一 1.开发与运行Java程序需要经过哪些主要步骤和过程?2.怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public修饰吗?3.Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎样的?4.在运行小程序的html文件中可以使用codebase属性指定小程序的字节码所驻留的目录。如果不使用codebase属性,小程序的字节码文件必须和运行它的html在同一目录中。编写一个小程序并将小程序的字节码存放在某个目录中,比如c:Boy;把运行该小程序的html文件(注意其中的codebase属性):存放在另一个目录中(查阅有关编写网页方面的书籍,哪里有更详细的关于怎样在一个网页中嵌入一个小应用程序的讲解)。第二章 标识符、关键字和数据类型2.1 标识符和关键字1.标识符用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。下列都是合法的标识符Girl_$,www_12$,$23boy.注:Java语言使用unicode字符集,含有65535个字符。所以字母包括下面几种:(1)AZ;az.(2) 汉字、日文片假名、平假名和朝鲜文等。2.关键字关键字就是Java语言中已经被赋予特定意义的一些单词。不可以把这类词作为名字来用。Java的关键字有: abstract boolean break byte case catch char class continue do double else extends false find finally float for implements import instanceof int interface long nativenew null package private public return short static super switch synchronized this throw true try void while.2.2 Java语言基本数据类型1.逻辑类型l 常量:true ,false.l 变量的定义使用关键字boolean来定义逻辑变量。boolean x; boolean tom_12;也可以一次定义几个boolean x,tom,jafei,漂亮;x,tom,jafei,漂亮都是变量的名字。定义时也可以赋给初值boolean x=true,tom=false,漂亮=true,jiafei;2.字符类型l 常量:Ab?!9好t,Java使用unicode字符集,所以常量共有65535个。l 变量的定义:使用关键字char来定义字符变量。char x, char tom_12;也可以一次定义几个char x,tom,jafei,漂亮;x,tom,jafei,漂亮都是变量名字。定义时也可以赋给初值char x= A,tom=家,漂亮=假,jiafei;3.整数类型l 常量:123,6000(十进制),077(八进制),0x3ABC(十六进制)。l 整型变量的定义分为三种1) int 型使用关键字int来定义int 型整型变量int x ;int tom_12;也可以一次定义几个int x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值int x= 12,tom=-1230,漂亮=9898,jiafei;注:对于int型变量,内存分配给4个字节,占32位,因此int型变量的取值范围是: -231231-1。2) byte 型使用关键字byte 来定义byte 型整型变量byte x ; byte tom_12;也可以一次定义几个 : byte x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值byte x= -12,tom=28,漂亮=98,jiafei;注:对于byte型变量,内存分配给1个字节,占8位,因此byte型变量的取值范围是: -2727-1。3) short 型使用关键字short来定义short型整型变量short x ; short tom_12;也可以一次定义几个short x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值short x= 12,tom=1234,漂亮=9876,jiafei;注:对于short型变量,内存分配给2个字节,占16位,因此short型变量的取值范围是: -215215-1。4) long 型使用关键字long来定义long型整型变量long x ; long tom_12;也可以一次定义几个long x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值long x= 12,tom=1234,漂亮=9876,jiafei;注:对于long型变量,内存分配给8个字节,占64位,因此long型变量的取值范围是: -263263-1。4 浮点类型(实型)浮点型分两种1) float 型l 常量:123.5439f,12389.987F,123.0f,2e40f(2乘10的40次方,科学计数法)l 变量的定义使用关键字float来定义float型变量float x ; float tom_12;也可以一次定义几个float x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值float x= 12.76f,tom=1234.987f,漂亮=9876.0f,jiafei;注:对于float型变量,内存分配给4个字节,占32位,float型变量的取值范围大约是: 10-381038 , -1038-10 -38。2) double 型l 常量:12389.5439d(d可以省略),12389908.987,123.0,6e-140(6乘10的-140次方,科学计数法)l 变量的定义使用关键字double来定义double型变量double x ; double tom_12;也可以一次定义几个double x,tom,jafei,漂亮;x,tom,jafei,漂亮都是名字。定义时也可以赋给初值double x= 12.76,tom=1234098.987,漂亮=9876.098d,jiafei;注:double型变量,内存分配给8个字节,占64位,double型变量的取值范围大约是: (10-30810308 )例子1 public class Datatype public static void main(String args) byte a=120;short b=250;int c=2200;long d=500000; char e=花;float f=11111.111f;double g=11111111.111; boolean 男=true;boolean 女=false; System.out.println(a= +a); System.out.println(b= +b); System.out.println(c= +c); System.out.println(d= +d); System.out.println(e= +e); System.out.println(f= +f); System.out.println(g= +g); System.out.println(男= +男); System.out.println(女= +女); 习 题 二1当我们把一种数据类型变量的值赋给另一种类型变量时,就涉及到数据转换。当把在内存中占用字节数较少的变量的值赋给成占字节数较多的变量时,系统自动完成数据类型的转换。例如,int x=50;float y;y=x;如果输出y的值,结果将是50.0(当然x的值仍然是50). 当把在内存中占用字节数较多的变量的值赋给成占字节数较少的变量时,必须使用强制类型转换运算。强制转换的格式:(类型名)要转换的值;例如,float x=50.987;int y;y=(int)x;如果输出y的值,结果将是50(当然x的值仍然是50.987).强制转可能换会导致精度的损失。上机运行下列程序,注意观察输出的结果。public class Data public static void main(String args) byte a=120;short b=250;int c=2200;long d=5000; char e;float f;double g=123456789.123456789; b=a;c=(int)d;f=(float)g;e=(char)b; System.out.println(a= +a); System.out.println(b= +b); System.out.println(c= +c); System.out.println(d= +d); System.out.println(e= +e); System.out.println(f= +f); System.out.println(g= +g); 2.System.out.println(“你好”);可输出串值,也可以使用System.out.println()输出变量或表达式的值,只需使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置即可,如:System.out.println(“ ”+x); System.out.println(“:”+123+ “大于”+122);等。上机调试下列程序,注意观察结果,特别注意System.out.print()和System.out.println()的区别。public class Input public static void main(String args) int x=234,y=432; System.out.println(:+x+2*x); System.out.print(我输出结果后不回车); System.out.println(我输出结果后自动回车到下一行); System.out.println(x+y= +(x+y); System.out.println(?+x+y+=234432); 第三章 运算符、表达式、语句3.1 运算符与表达式1.算术运算符与算术表达式(1) 加减运算符:+,- 例如:2+39;908.98-23 等.加减运算符是双目运算符,即连接两个操作元的运算符。加减运算符的结合方向是从左到右。例如: 2+3-8,先计算2+3,然后再将得到的结果减8。加减运算符的操作元是整型或浮点型数据,例如 int x=20;float y=239.87f;double z=200.89; x+y-z; 加减运算符的优先级是4级(2) 乘,除和求余运算符:*,/,%。 例如,2*39;908.98/23 等l *,/,%运算符是双目运算符,即连接两个操作元的运算符。l *,/,%运算符的结合方向是从左到右,例如2*3/8,先计算2*3,然后再将得到的结果除以8l 乘除运算符的操作元是整型或浮点型数据,例如int x=20.876;float y=239f;double z=200.89;y%x ,x*y/x*z.l *,/,%运算符的优先级是3级.2*3+8/2的运算结果是10(如果+的级别高于*,/,结果将是11)。注:5/2的结果是2,要想得到2.5,必须写成5.0/2算术表达式:用算术符号和括号连接起来的符合java语法规则的式子,如x+2*y-30+3*(y+5)2自增,自减运算符:+,-(优先级是2级)自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型变量。作用是使变量的值增1或减1,如:+x,-x (在使用x之前,先使x的值加(减)1)x+,x- (在使用x之后,使x的值加(减)1)粗略的看,+x和x+的作用相当于x=x+1.但+x和x+的不同之处在于+x是先执行x=x+1再使用x的值;而x+是先使用x的值后,再执行x=x+1.如果 x的原值是5,则:y=+x; y的值为6y=x+; y的值为5,然后x的值变为6。3.关系运算符与关系表达式关系运算符用来比较两个值的关系.关系运算符的运算结果是boolean型,当运算符对应的关系成立时,运算结果是true,否则是false.例如,101的结果是true,3!=5的结果是true,1020-17的结果为true,因为算术运算符的级别高于关系运算符,1020-17相当于10(20-17),结果当然是true(学了对象这个概念之后,你会知道=,!=还可以用来比较两个对象的引用)。关系表达式:结果为数值型的变量或表达式可以通过关系运算符形成关系表达式。如,48,(x+y)80。表3.1 关系运算符运算符优先级用法含义结合方向=op2op1=op2op18&92的结果为false,28|92的结果为true。由于关系运算符的级别高于&、|的级别,28&82相当于(28)&(92)。5赋值运算符与赋值表达式赋值运算符:= 。赋值运算符是单目运算符,左面的操作元必须是变量,不能是常量或表达式。设x是一个整型变量,y是一个boolean型变量,x=20和y = true都是正确的赋值表达式,赋值运算符的优先级较低,是14级,结合方向右到左。注意不要将赋值运算符“=”与等号运算符“=”混淆。6运算符综述Java的表达式就是用运算符连接起来的符合Java规则的式子。运算符的优先级决定了表达式中运算执行的先后顺序。例如,xy&!z相当于(x 左到右6大小关系运算 =左到右7相等关系运算= = !=左到右8按位与运算&左到右9按位异或运算左到右10按位或|左到右11逻辑于运算&左到右12逻辑或运算|左到右13三目条件运算? :左到右14赋值运算=右到左3.2 语句1 语句概述Java里的语句可分为以下五类(1)方法调用语句:如:System.out.println( Hello);(2)表达式语句:由一个表达式构成一个语句,最典型的是赋值语句。x=23;一个表达式的最后加上一个分号就构成了一个语句。分号是语句不可缺少的部分。(3)复合语句:可以用 把一些语句括起来构成复合语句。 z=23+x;System.out.println(hello);(4)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 留学代理合同7篇
- 2024-2025学年度广播电视编辑记者预测复习(B卷)附答案详解
- 新生儿低血糖的诊断标准与纠正方案
- 事业单位租车合同(标准版)
- 武汉房屋过户合同(标准版)
- 2025年内江市市中区部分事业单位招聘考试(10名)考前自测高频考点模拟试题含答案详解(考试直接用)
- 2025年老年教育课程内容创新与多媒体辅助教学法研究案例分析报告
- 2025年环评公众参与机制在环境监测数据共享中的应用报告
- 2025年在线教育平台用户增长与留存策略教育行业新兴技术应用报告
- 浙教版八下第三章:《碳、氧循环及空气污染》培优训练
- 初中数学七年级上册《绝对值》说课课件 肖娜
- 地下室防水效果检查记录表
- 二级制图员判断题试题库与参考答案
- DDI领导力学习地图
- 顾正田医生:子宫内膜异位症不孕处理
- 城乡规划管理与法规系列讲座城市规划依法行政案例
- 控制论与维纳
- GB/T 12718-2001矿用高强度圆环链
- 舞蹈教学课件第五单元-中外舞蹈名作赏析
- 肱骨近端骨折Neer分型及治疗课件
- 中职数学基础模块上册课件-
评论
0/150
提交评论