版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、12.4 Java2.4 Java程序的基本结构程序的基本结构JavaJava程序是程序是类和接口类和接口的集合。的集合。public public classclass JavaFirstProgramJavaFirstProgram public static void public static void mainmain(String (String argsargs) ) SystemSystem.out.out.printfprintf(This is a Java Program.)(This is a Java Program.); ; This is a Java Progr
2、am.This is a Java Program.方法名方法名类名类名方法名方法名类名类名声明类的关键字声明类的关键字JavaJava中中,操作操作语句语句都都放在放在方法方法(相当(相当于于C C语言中的函数)语言中的函数)中,中,方法都方法都放在放在类类,一个一个JavaJava程序程序由多由多个个类或接口类或接口组成。组成。2常见的常见的JavaJava开发环境开发环境q从网络上直接下载从网络上直接下载JDKJDK(J Java ava D Developer eveloper K Kitit),),并利用命令行方式操作并利用命令行方式操作javacjavac(编译器);(编译器);j
3、avajava(解释器)(解释器)qJavaJava集成开发环境(集成开发环境(IDEIDE)NetBeansNetBeans 、Eclipse Eclipse 、 JBuilderJBuilder下载地址:下载地址:http:/ p选择一个文本编辑器将上述源程序录入计算机,选择一个文本编辑器将上述源程序录入计算机,并用并用JavaFirstProgramJavaFirstProgram.java.java作为文件名将其保存。作为文件名将其保存。p利用利用JavaJava编译器编译器编译以形成字节码文件编译以形成字节码文件JavaFirstProgram.classJavaFirstProgr
4、am.class。操作命令为:。操作命令为: c:examplec:examplejavacjavac JavaFirstProgram.javaJavaFirstProgram.javap利用利用JavaJava解释器解释器运行字节码,操作命令为:运行字节码,操作命令为: c:examplec:examplejavajava JavaFirstProgramJavaFirstProgram42.5 Java2.5 Java程序的基本数据类型程序的基本数据类型数据类型数据类型决定决定了参与操作的变量、常量和表达式了参与操作的变量、常量和表达式的的取值类别取值类别、取值范围取值范围以及以及能够实
5、施的操作能够实施的操作行为。行为。intint i i=3;=3;char char c c=A;=A;JavaJava数据类型划分数据类型划分简单数据类型包括:布尔类型:boolean字符类型:char整数类型:byte, short, int, long浮点类型:float,double复合数据类型包括:class(类)interface(接口)数组6表表2-1 Java2-1 Java语言的基本数据类型语言的基本数据类型数据类型数据类型占用二进制位数占用二进制位数取值范围取值范围默认值默认值booleanboolean(布尔型)(布尔型) 832 832位位true或或falsefals
6、efalsecharchar(字符型)(字符型)1616位位u0000uffff(065535)u0000u0000bytebyte(字节型)(字节型)8 8位位-128127(-27(27-1)0 0shortshort(短整型)(短整型)1616位位-3276832767(-215(215-1)0 0intint(整型)(整型)3232位位-21474836482147483647(-231(231-1)0 0longlong(长整型)(长整型)6464位位-92233720368547758089223372036854775807(-263(263-1)0 0floatfloat(单精
7、度浮点(单精度浮点型)型)3232位位 1.4E-45f 3.4028235E+38f0.0f0.0fdoubledouble双精度浮点型双精度浮点型6464位位 4.9E-324 1.7976931348623157E+3080.00.07booleanboolean(布尔)(布尔) 只有只有“true”true”和和“false”false”两个取值,分别代两个取值,分别代表表“真真”和和“假假”。布尔型变量的定义如:布尔型变量的定义如:booleanboolean b=true; b=true;或:或:booleanboolean b=5060; b=5060;注意:注意:布尔类型的变量
8、布尔类型的变量不能不能够够与与任何任何其他类型其他类型进行相进行相互的类型互的类型转换转换操作。在操作。在C C语言中,语言中,0 0可当作可当作falsefalse使用,使用,非零整数可当作非零整数可当作truetrue使用,但在使用,但在JavaJava中不允许。中不允许。booleanboolean(布尔)(布尔)l例如:8if(a!=0) a+=10;else a-=10;if(a) a+=10;else a-=10;for(int i=10;i;i-) i-;for(int i=10;i0;i-) i-;9charcharvJavaJava语言规定,字符采用语言规定,字符采用Unic
9、odeUnicode编码,每个字符编码,每个字符占用占用两两个字节。个字节。C C语言采用语言采用ASCIIASCII编码,每个字符编码,每个字符占占一一个字节。个字节。v可以表示可以表示65 53665 536个字符个字符。vASCIIASCII字符集是字符集是UnicodeUnicode字符集的一个子集字符集的一个子集,并且,并且在这两个字符集中,前在这两个字符集中,前128128个编码所对应的字符完个编码所对应的字符完全相同,只是每个字符占用的二进制位数不同。全相同,只是每个字符占用的二进制位数不同。10bytebyte、shortshort、intint、longlong以下以下4 4
10、种数据类型都属于种数据类型都属于整型数值类型整型数值类型。bytebyte 1 1个字节个字节short 2short 2个字节个字节 int 4int 4个字节个字节long long 8 8个字节个字节注意:注意:Java语言中所有整数型表示的语言中所有整数型表示的均为有符号数均为有符号数,没有没有C语言中的语言中的无符号(无符号(unsigned)整数型。)整数型。11floatfloat、doubledoubleqfloat float 单精度单精度 3232位位qdouble double 双精度双精度 6464位位qJavaJava语言中的浮点数值表示遵循语言中的浮点数值表示遵循I
11、EEE754IEEE754标准标准。它不仅包括它不仅包括正零、负零、正无穷大、负无穷正零、负零、正无穷大、负无穷大大和一个特别的表示非数值的和一个特别的表示非数值的符号符号NaNNaN。浮点型浮点型 举例举例12double d=1e308;/1*10308System.out.print(overflow prodeces infinity:); System.out.println(d+*10=+d*10);上溢上溢overflow prodeces infinity:1.0E308*10=Infinity d=1e-305*Math.PI;System.out.println(gradu
12、al underflow:+d);for(int i=0;i4;i+) System.out.print( +(d/=100000);下溢下溢gradual underflow:3.141592653589793E-3053.1415926535898E-310 3.141592653E-315 3.142E-320 0.0浮点型浮点型 举例举例13System.out.print(0.0/0.0 is Not-a-Number:); d=0.0/0.0; System.out.println(d);产生非数值产生非数值NaN0.0/0.0 is Not-a-Number:NaN System
13、.out.print(cast to int rounds toward 0:); d=12345.6; System.out.println(int)d+ +(int)(-d);double转转intcast to int rounds toward 0:12345 -12345142.6 2.6 标识符、注释、直接量、变量和常量标识符、注释、直接量、变量和常量 【标识符标识符】 Java Java 的标识符由的标识符由字母字母、数字数字、_ _和和$ $组成,长度组成,长度不限。其中字母可以是大写或小写的英文字母,不限。其中字母可以是大写或小写的英文字母,数字为数字为 0 0 到到 9 9
14、。注意:注意:1.1.标识符区分大小写标识符区分大小写。TestTest和和testtest不同;不同;2.2.标识符的标识符的第一个字符第一个字符必须为必须为字母字母、( (_ _) )或或( ($ $) )符号。符号。3.3.用户自己定义的标识符不能与用户自己定义的标识符不能与JavaJava语言中提供的关键字语言中提供的关键字与常量相同与常量相同15【关键字关键字】 又称保留字,是又称保留字,是 Java Java 语言规定了特定含义的语言规定了特定含义的标识符标识符。用户只能按照系统规定的方式使用,。用户只能按照系统规定的方式使用,不能自行定义。不能自行定义。关键字一律关键字一律用小写
15、字母用小写字母表示。表示。Java Java 中的关键字有中的关键字有 5050个,按用途划分为:个,按用途划分为:数数据类型、语句、据类型、语句、修饰、方法、类、接口、包修饰、方法、类、接口、包,并保留了并保留了constconst和和 gotogoto。16表表 2-2 Java2-2 Java语言的关键字语言的关键字abstractcontinuefornewswitchassertdefaultgotopackagesynchronizedbooleandoifprivatethisbreakdoubleimplementsprotectedthrowbyteelse enumimpo
16、rtpublicthrowscaseenuminstanceofreturntransientcatchextendsintshorttrycharfinalinterfacestaticvoidclassfinallylongstrictfpvolatileconstfloatnativesuperwhile标识符举例标识符举例l判断以下字符串哪些是合法的Java标识符。lidentifier,2mail, room#, $change ,userName,User_Name,_sys_val, class, a-class,su,super17JavaJava标识符命名规范标识符命名规范可
17、读性好,可读性好,“见名知义见名知义”;包名包名:小写英文字母小写英文字母;如:;如:“firstapplication”;类名、接口名类名、接口名:每个单词的首写字母都要大写每个单词的首写字母都要大写,如:,如:“ImageSprite”方法名方法名:动词或动词短语动词或动词短语,第一个单词的首字母小写,其,第一个单词的首字母小写,其他单词的首字母大写,如:他单词的首字母大写,如:getName()变量名变量名:第一个单词的首字母小写第一个单词的首字母小写,其他单词的首字母大其他单词的首字母大写写,尽量,尽量不不要要使用使用_和和$,如:,如:myWidth常量名常量名:每个字符都为大写每个
18、字符都为大写,单词之间用,单词之间用下划线(下划线(_)分隔,分隔,如:如:MAX_VALUE18相当于相当于C语言中的符号常量语言中的符号常量标识符命名规范举例标识符命名规范举例l根据标识符命名规范,判断以下标识符所表示的类型(类名、方法名、变量名和常量名类名、方法名、变量名和常量名): MIN_LENGTH; Student; student; MathBook; testClass; run; getNumber 1920 注释注释是为源程序增加必要的解释说明的内容,是为源程序增加必要的解释说明的内容,其目的是提高程序的可读性,书写注释是编写其目的是提高程序的可读性,书写注释是编写程序的
19、良好习惯。程序的良好习惯。JavaJava中有三种形式的注释:中有三种形式的注释: / / 注释部分注释部分 / /* * 注释部分注释部分 * */ / / /* * * 注释部分注释部分 * */ / 【注释注释】程序注释程序注释文档注释:文档注释:21【直接量直接量】n整型直接量整型直接量:十、八、十六进制:十、八、十六进制n实型直接量实型直接量:doubledouble、floatfloatn字符型直接量字符型直接量:单引号括起来:单引号括起来n布尔型直接量布尔型直接量:true true 和和 falsefalsen字符串型直接量字符串型直接量:双引号括起来:双引号括起来相当于相当于
20、C语言中的常量语言中的常量整型直接量整型直接量十进制整数: 如123,456,0。默认的数据类型为int,如要赋给int型变量,那数值应该在int的取值范围,例如:int a=123;问:能否将一个十进制整数直接赋给长整型变量呢?如:long b=123;问:long l=-9876543210 ;是否正确?如果要表示长整型的数值,应以l或L结尾,如: long l=-9876543210 L;22可以。可以。数据类型数据类型取值范围较小取值范围较小的的变量或直接变量或直接量量可可以以直接赋值直接赋值(隐式转换)(隐式转换)给取值范围给取值范围较大的变量较大的变量。相反地相反地,数据类型取,数
21、据类型取值范围较大的变量或直接量值范围较大的变量或直接量不能不能直接赋值给取值范围较小的直接赋值给取值范围较小的变量,需要进行变量,需要进行强制类型转换(显式转换)强制类型转换(显式转换)。不正确不正确。因为。因为-9876543210-2147483648(整型数的下限),超出了int的范围,而在long范围内。 整型直接量整型直接量八进制整数: 以0开头,如012表示十进制数 ,011表示十进制数 。十六进制整数:以0 x或0X开头,如0 x12表示十进制数18。23109浮点型直接量浮点型直接量十进制数形式:十进制数形式: 由由数字和小数点数字和小数点组成,且必须有小数点,如组成,且必须
22、有小数点,如 1.23, 123.01.23, 123.0科学计数法形式:科学计数法形式:如:如:123e3123e3或或123E3123E3(表示(表示123123* *10103 3),其中),其中e e或或E E之前必须有数字之前必须有数字,且,且e e或或E E后面的后面的指数必须为整数指数必须为整数。在十进制和科学计数法常数后面可以跟在十进制和科学计数法常数后面可以跟“F”F”或或“f”f”( (单精度单精度) )、“D”D”或或“d”d”(双精度(双精度), ,来表示来表示floatfloat型型或或doubledouble的值:如的值:如1.23f1.23f,2.3e3D2.3e
23、3D,如果后面没有跟任何修饰如果后面没有跟任何修饰,它的类型为,它的类型为双精双精度度。问:问:float f=123.4 float f=123.4 是否正确?是否正确? doubledouble d=123.4d=123.4是否正确?是否正确? float f=123 float f=123 是否正确?是否正确?24字符型直接量字符型直接量l有两种形式:字符和转义符,都用单引号括起来;l例:a,A,或是tb等;在ASCII码中用xxx(xxx为一个八进制数)表示其中字符。例如:141表示字符 。在Unicode 码中,用uxxxx( xxxx为一个十六进制数)表示Unicode 码中的字符
24、。 例如:u0061也表示字符a。25a转义字符转义字符 说明说明l转义字符转义字符主要用来表示一些不可显示的符号不可显示的符号,比如:换页换页、换行换行、水平制表水平制表等。l也可表示部分可以显示也可表示部分可以显示的符号,比如:“”(单引号)表示为,还有“”(反斜杠)表示为;26变量变量l变量变量表示一块被命名命名且用来存储程序中数据数据的存储区域存储区域。l变量的几个要素:变量名变量名、变量的类型类型、变量的取值取值以及变量的存储地址存储地址;2728变量的定义变量的定义 在在 Java Java 语言中,所有的变量必须先定义后使用。语言中,所有的变量必须先定义后使用。其格式为:其格式为
25、: 数据类型数据类型 标识符标识符1=1=初值初值,标识符标识符22; 例如:例如:int intVar=3int intVar=3,valuevalue; 注意:如果是注意:如果是基本数据类型基本数据类型,变量在声明时就为,变量在声明时就为其分配内存空间;其分配内存空间;否则否则,还需要用还需要用 new new 为为其其声声明的变量明的变量分配空间分配空间。例如:例如:int a; int a; int a=new int10;int a=new int10;29【常量常量】 在在JavaJava语言中,可以利用关键字语言中,可以利用关键字finalfinal声明常量。声明常量。例如:例如
26、: finalfinal float float PIPI = 3.14159f; = 3.14159f; finalfinal int int MAX_NUMMAX_NUM =1000; =1000; 注意:与注意:与C C语言不同,这里的常量并非一定在语言不同,这里的常量并非一定在声明声明的同时赋予常量值的同时赋予常量值,只是要求在程序运行期间仅能,只是要求在程序运行期间仅能被赋值一次,一旦赋值后就不能再次被更改。被赋值一次,一旦赋值后就不能再次被更改。 例如:例如:final float PRICE,MAX;final float PRICE,MAX; PRICE=5.34;MAX=10
27、0; PRICE=5.34;MAX=100; 相当于相当于C语言中的符号常量语言中的符号常量302.7 Java2.7 Java程序的输入输出程序的输入输出 1 1输入方式输入方式 在在JDK 5.0JDK 5.0版本中,提供了一个专门用于处理数版本中,提供了一个专门用于处理数据输入的据输入的ScannerScanner类类,利用它可以方便地实现各种数,利用它可以方便地实现各种数据的键盘输入。据的键盘输入。 注意:程序首部需要注意:程序首部需要“import java.util.import java.util.* *;”首先,创建一个首先,创建一个ScannerScanner类型的对象类型的
28、对象,例如:例如:Scanner a=new Scanner(System.in)Scanner a=new Scanner(System.in);然后,通过然后,通过调用该对象的方法调用该对象的方法,如,如nextInt()nextInt(), , nextLine()nextLine(), , next()next()等等获取键盘输入获取键盘输入的相应内容。的相应内容。 在在ScannerScanner类中,提供了几个读取输入内容的方法。类中,提供了几个读取输入内容的方法。 String String nextLine(nextLine() ) 读取输入的下一行内容读取输入的下一行内容 S
29、tring String next() next() 读取输入的下一个单词读取输入的下一个单词 int int nextInt()nextInt() 读取下一个表示整数的字符序列,并转换成读取下一个表示整数的字符序列,并转换成intint型型 double double nextDouble() nextDouble() 读取下一个表示浮点数的字符序列,并将其转换成读取下一个表示浮点数的字符序列,并将其转换成doubledouble型型 boolean boolean hasNext() hasNext() 检测是否还有输入内容检测是否还有输入内容 boolean boolean hasNex
30、tInt()hasNextInt()检测是否还有表示整数的字符序列检测是否还有表示整数的字符序列 boolean boolean hasNextDouble() hasNextDouble() 检测是否还有表示浮点数的字符检测是否还有表示浮点数的字符序列序列31import java.util.*; public class InputTest public static void main(String args) Scanner in = new Scanner(System.in); System.out.printf(What is your name?); String name =
31、 in.nextLine(); System.out.printf(How old are you?); int age = in.nextInt(); System.out.printf(Hello, + name + is + age + years old.); 32What is your name?Ji suan jiHow old are you?70Hello,Ji suan ji is 70 years old. String name = in.next (); 2 2输出方式输出方式 System.out.printSystem.out.print(“输出内容输出内容”);); System.out.printlnSystem.out.println(“输出内容输出内容”););SystemSystem是一个封装了是一个封装了输入输出功能的标准类输入输出功能的标准类;outout是是SystemSystem类中包含的属于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年折叠筷子:环保与便捷的餐具革新
- 2024年春季音乐教学:《春之声》教案全新设计方案
- 装饰装修施工工程技术交底大全
- 6月读书笔记-观看幼小协同科学衔接有感
- 《2024年老王的新起点》-老王的人生故事分享会
- 说课:椭圆(徐芳芳)
- 2023中考模拟英语试卷
- 员工培训协议书5篇
- 2024年教育创新下的《邓稼先》课件
- 汽车发动机机械系统检修单元4发动机水温过高故障的检修
- 2024版人教版英语初一上单词默写单
- 化学实验室安全智慧树知到期末考试答案2024年
- 经典房地产营销策划培训(全)
- 工人入场安全教育课件
- 【川教版】《生命 生态 安全》二年级上册第12课 少点儿马虎 多点儿收获 课件
- 人教版数学四年级上册第五单元 《平行四边形和梯形》 大单元作业设计
- 静配中心差错预防
- 送教上门体育、健康教案教学内容
- 高夫品牌市场分析报告
- 职业规划书-数字化设计与制造技术
- 国家临床重点专科建设项目申报书
评论
0/150
提交评论