第二章 JAVA语言基础
回顾 了解Java语言的发展历史 了解Java语言的特点 了解Java语言与C++语言的不同之处 掌握安装并设置Java开发平台
目标 掌握标识符的定义规则 了解常用的保留字和分隔符 掌握各种简单数据类型的使用 掌握运算符和表达式的使用 掌握Java程序简单的输入输出方法
2.1.1 Java标识符 用来表示变量、方法或类等的名字。定义的规则如下: 只能使用字母、数字、下划线和美元符。 只能以字母、下划线和美元符开头。 严格区分大小写,没有长度限制。 应该具有特定的意义。 合法标识符: $Programe,_java, $Programe_Java1, Programe2_1等。 非法标识符: 12Programe,&_java, $Programe Java1, %Programe21等。
2.1.2 保留字 abstract break byte boolean catch case char class continue default do double else extends false final float for finally if import implements int interface Instanceof long length native new null package private protected public return switch synchronized short static super try true this throw throws threadsafe transient void volatile while
2.1.3 分隔符(Seprators) 有:空格、圆括号、花括号、分号等。 每条语句无论一行还是多行都以分号结束。块(Block)是包含在{ }里面的多条语句,块可以嵌套。空白插在代码的元素中间:由一个或多个空格组成,也可以由一个或多个tab空格组成多个空行。
使用javadoc工具从源代码和文档注释中将信息取出,然后转换为HTML文件。 2.1.4 注释(Comments) 单行注释,以换行符为结束。 (1)单行 ://… (2)多行 :/* … */ (3)文档注释 : /** * … 多行注释,注释内容较多。 使用javadoc工具从源代码和文档注释中将信息取出,然后转换为HTML文件。
2.2.1 数据类型划分 字节型(byte) 短整型(short) 字符型(char) 整数类型 整型(int) 长整型(long) 2.2.1 数据类型划分 Java数据类型 基本数据类型 字符型(char) 布尔类型(boolean) 复合数据类型 类(class) 接口(interface) 数组 空类型(null) 数值类型 整数类型 实数类型 短整型(short) 整型(int) 单精度浮点型(float) 双精度浮点型(double) 长整型(long) 字节型(byte)
用于标识数据的存储单元,各种类型的变量创建后都有默认值。 2.2.2 常量和变量 其数值意义如同字面所表示的一样。 用Java标识符表示的一个常量。 1.常量有字面(Literal)常量和符号常量两种。 符号常量定义的一般格式如下: <final><数据类型><符号常量标识符>=<常量值>; 例如:final double PI=3.141593; final int COUNT=1000; 2.变量定义的一般格式如下: <数据类型><变量标识符>=<值>, <变量标识符>=<值>,…; 例如: double x=1.2345; 用于标识数据的存储单元,各种类型的变量创建后都有默认值。
2.3.1 整型数据2-1 1.整型常量 (1) 整型多为十进制数形式,也可为八进制或十六进制形式。 (2) Java整型数都为带符号数。 2.3.1 整型数据2-1 1.整型常量 (1) 整型多为十进制数形式,也可为八进制或十六进制形式。 (2) Java整型数都为带符号数。 (3) 整型缺省为int型,若为长整型需在数据后加字母l 或 L 。
2.3.1 整型数据2-2 2.整型变量 按照长度分为:byte、short、int、long。 2.3.1 整型数据2-2 2.整型变量 按照长度分为:byte、short、int、long。 int类型常用,基本满足需要,再大的整数long。 byte类型范围很小,-255到+255之间。 short类型很少用,限制数据的存储为先高字节,后低字节,在某种及其中会出错。 例如:byte b; short s; int i; long l;
2.3.2 实型数据2-1 1.实型常量 (1)用十进制数形式表示,由数字和小数点组成,例如,3.25。 2.3.2 实型数据2-1 1.实型常量 (1)用十进制数形式表示,由数字和小数点组成,例如,3.25。 (2)用科学计数法形式表示,例如,123E-3。 (3)数后加f或F为float,加d或D为double,没有后缀修饰的则缺省为double类型。
2.3.2 实型数据2-2 2.实型变量 实型变量按长度分为:float和double。 2.3.2 实型数据2-2 2.实型变量 实型变量按长度分为:float和double。 双精度浮点型double比单精度浮点型float的精度更高,表示数据的范围更大。 例如,float ; double d;
2.3.3 字符型数据2-1 字符常量是用单引号括起来的一个字符,如:'J'、'*'。 2.3.3 字符型数据2-1 字符常量是用单引号括起来的一个字符,如:'J'、'*'。 Java中有以反斜杠(\)开头的字符,反斜杠将其后面的字符转变为另外的含义,称为转义字符。
2.3.3 字符型数据2-2 Java中的字符型数据是16位的Unicode字符,汉字和英文字母占的内存空间相同。 2.3.3 字符型数据2-2 Java中的字符型数据是16位的Unicode字符,汉字和英文字母占的内存空间相同。 “JAVA你好”共12个字节。 变量的定义如下: char ch=‘c’;
2.3.4 字符串数据 字符串常量是使用双引号括起来的字符序列,注意:最后字符不是‘\0’。 2.3.4 字符串数据 字符串常量是使用双引号括起来的字符序列,注意:最后字符不是‘\0’。 例如:"Let’s learn Java! "。 字符串变量作为对象来处理,通过String和StringBuffer类的构造方法来定义。 String s=new String();
2.3.5 布尔型数据 布尔型常量值只有:true和false。 布尔型变量为boolean类型,去值为true和false。 例如, 2.3.5 布尔型数据 布尔型常量值只有:true和false。 布尔型变量为boolean类型,去值为true和false。 例如, boolean b=true;
2.3.6 类型转换 自动类型转换:低优先级的数据自动会转换为高优先级的数据。 低 高 2.3.6 类型转换 自动类型转换:低优先级的数据自动会转换为高优先级的数据。 低 高 byte、short、char int long float double 强制类型转换:优先级高的数据转换为优先级低的数据。 例如,double d=3.14159d; int a=(int)d;
2.4.1 算术运算符 包括:+,-,*,/,%,++,--等。 前缀++:变量首先进行操作在自身进行加。 例如, 2.4.1 算术运算符 包括:+,-,*,/,%,++,--等。 前缀++:变量首先进行操作在自身进行加。 例如, int a=2; int b=a++; (a=3,b=2) 后缀++:变量自身首先加然后再进行操作。 int a=2; int b=++a; (a=3,b=3)
2.4.2 关系运算符 完成操作数的比较运算,结果为布尔类型值。 2.4.2 关系运算符 完成操作数的比较运算,结果为布尔类型值。 包括:==,!=,<,<=,>,>=,instanceof。 优先级低于算术运算符,执行顺序自作向右。
&&,如果其前面的表达式为假,则不再计算其后面的表达式 &,不管其前面的表达式为什么,都计算其后面表达式 2.4.3 布尔逻辑运算符 包括:&,|,!,^,&&,||。 注意区别简洁与&&(或||)和非简洁与&(或|) 例如,int a=6,b=8,c=10,d=12; boolean x=++a>b++&&c++>d--; &&,如果其前面的表达式为假,则不再计算其后面的表达式 &,不管其前面的表达式为什么,都计算其后面表达式 (a=7,b=9,c=10,d=12,x=false) boolean b=++a>b++&c++>d--; (a=7,b=9,c=10,d=12,x=false)
2.4.4 位运算符 按位取反〜,〜01010101=10101010。 按位与&,11111001&10001111=10001001。 2.4.4 位运算符 按位取反〜,〜01010101=10101010。 按位与&,11111001&10001111=10001001。 按位或|,11111001|10001111=11111111。 按位异或^,11111001^10001111=01110110。 左移<<,10101011<<2=10101100。 右移>>,10101011>>2=11101010。 无符号右移>>>,10101011>>>2=00101010。
2.4.5 赋值运算符 包括:=,+=,-=,*=,/=,%=。 例如, int a=b=c=3;
2.4.6 条件运算符 为(?:)一般形式为: 表达式1?表达式2:表达式3; 例如, 2.4.6 条件运算符 为(?:)一般形式为: 表达式1?表达式2:表达式3; 例如, double salary=(x intanceof teacher)?2000:200; 2.4.7 运算符的优先级 如书p35表2-10所示。
2.5 表达式 由操作数和运算符按照一定的语法格式组成表达式。 例如, (a+b)*(c-d)。
2.6 简单的输入输出 输出:使用System.out对象进行输出。 输入: 1、使用System.in对象输入。 2.6 简单的输入输出 输出:使用System.out对象进行输出。 Println():输出文本并换行。 Print():输出文本不换行。 输入: 1、使用System.in对象输入。 try----catch与read或readLine方法。 throws IOException与read或readLine方法。 2、使用命令行参数main()方法的args[]。
输入输出示例 命令行参数 import java.io.*; class inout{ public static void main(String args[])throws IOException{ byte buf[]=new byte[50]; double mul=1d; int n=Integer.parseInt(args[0]); for(int i=0;i<n;i++){ System.out.print("Please input the NO."+(i+1)+" data:"); System.in.read(buf); double num=Double.parseDouble(new String(buf).trim()); mul=mul*num; } System.out.println("The multi is: "+mul); 标准输入 System.in对象 标准输出
总结 主要介绍了Java语言的基本语法,首先是标识符的定义规则。 四大种(八小种)数据类型。整型、字符型、浮点型、布尔型。 各种运算符的使用方法和优先级。 表达式的定义和组成。 简单的输入输出方法的使用。