1、Java语言程序设计,王红涛 Teacher_,类型(Types),Java语言是强类型(strongly typed)语言,这意味着每个变量和每个表达式在编译时都得有一个类型 Java语言的类型分为 两类:基本类型(primitive types)和引用类型(reference types); 数字类型为基本类型,包括整数类型(integral types)byte, short,int, long, 和char, 浮点类型(floating-point types)float 和double。 引用类型有class 类型,interface 类型, 以及array 类型。 null是个常量
2、,它不是类型名。,值(Values),整数类型integral types 有byte, short, int, 以及 long, 他们的值分别为8-bit,16-bit, 32-bit 和 64-bit signed 补码整数,char类型的值为16-bit unsigned 整数,它的值表示Unicode字符。浮点类型floating-point types 有float和double ,它们的值分别为 32-bit和 64-bit 的 IEEE 754 浮点数。 boolean类型有两个值true和false,占用1bit。 整数类型值的可取范围: byte, 从 128 到 127;
3、short, 从 32768 到 32767; int, 从 2147483648 到 2147483647; long, 从 9223372036854775808 到 9223372036854775807; char, 从u0000 到 uffff, 即是从 0 到 65535,Literals常量,常量literal 是基本类型、 String 类型的值,包括null。 整数常量 integer literal 有三种表示形式decimal (base 10), hexadecimal (base 16), 或 octal (base 8). 一个十进制数是0到9的序列(第一个不能是0
4、),表示正整数; 一个十六进制数由0x 或 0X 开头,后跟若干十六进制数字,表示正数、负数和0; 一个八进制数以0开头,后跟若干八进制数,表示正数、负数和0; 整数后跟 L 或 l ,表示该数的类型为long类型,否则为int类型,建议使用L。,浮点常量,floating-point literal 可以有以下部分: whole-number(整数) part, a decimal point (小数点), a fractional part(小数部分), an exponent(指数部分),和一个类型后缀,指数部分由 e 或 E 后跟可带符号的整数; At least one digit,
5、 in either the whole number or the fraction part, and either a decimal point, an exponent, or a float type suffix are required. All other parts are optional. 浮点数后跟 F 或 f ,则其类型为float,否则其类型为double, 后缀D 或 d可选。,最大的正float数是3.40282347e+38f,最小的正float数是 1.40239846e-45f;最大的正 double 数是 1.79769313486231570e+30
6、8,最小的正double数是 4.94065645841246544e-324。 类Float 和 Double 中预定义的常量POSITIVE_INFINITY 和 NEGATIVE_INFINITY表示正无穷和负无穷。 类Float 和 Double 中预定义的常量Float.NaN 和Double.NaN 表示Not-a-Number值。 float常量的例子: 1e1f 2.f .3f 0f 3.14f 6.022137e+23f double 常量的例子: 1e1 2. .3 0.0 3.14 1e-9d 1e137,boolean 常量和字符常量,boolean 有两个值true
7、和 false。 character literal 是单引号(single quotes)括起来的字符 下面为char 常量(三种形式) 第一种形式 a % 第二种形式 t 第三种形式 u03a9 uFFFF 177,转义Escape 序列,Escape序列: b /* u0008: backspace BS */ t /* u0009: horizontal tab HT */ n /* u000a: linefeed LF使得打印机走纸到下一行*/ f /* u000c: form feed FF 使得打印机走纸到下一页*/ r /* u000d: carriage return CR使
8、得打印头回到行首*/ “ /* u0022: double quote“ */ /* u0027: single quote */ /* u005c: backslash */ OctalDigit OctalDigit OctalDigit ZeroToThree OctalDigit OctalDigit,字符串String 常量和null 常量,string literal 由双引号括起来的零个(含)以上的字符序列。 每个字符都可能由转义序列(escape sequence)组成。 字符串的类型为String ,两个值相同的字符串常量其实是类 String 的同一实例。 字符串例子: “ / the empty string “ / a string containing “ alone “This is a string“ / a string containing 16 characters “This is a “ + “two-line string“ /* actually a string-valued constant expression, formed from two string*/ Null是个常量值,操作符(Operators)和分隔符( separators ),下面 37 tokens 为 operators:= = != , .,