一、标识符
Java自己定义好的关键字
关于 Java 标识符,有以下几点需要注意:
- 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
- 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
*不能使用关键字作为变量名或方法名。 - 标识符是大小写敏感的
- 合法标识符举例:age、$salary、_value、__1_value
- 非法标识符举例:123abc、-salary、#abc
二、数据类型
1.强弱类型语言
**强类型语言也称为强类型定义语言。**要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
Java、.NET、C++等都是强制类型定义的。也就是说,一旦一个变量被指定了某个数据类型,如果不经过转换,那么它就永远是这个数据类型了。
弱类型语言也称为弱类型定义语言。与强类型定义相反。像vb,php等就属于弱类型语言。
2.数据类型
Java的数据类型分为两大类:基本类型(primitive type)和引用类型 (reference type)
public static void main(String[] args) {
// byte
System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);
System.out.println("包装类:java.lang.Byte");
System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);
System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);
// short
System.out.println("基本类型:short 二进制位数:" + Short.SIZE);
System.out.println("包装类:java.lang.Short");
System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);
System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);
System.out.println();
// int
System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);
System.out.println("包装类:java.lang.Integer");
System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);
System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);
System.out.println();
// long
System.out.println("基本类型:long 二进制位数:" + Long.SIZE);
System.out.println("包装类:java.lang.Long"); System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);
System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE); System.out.println();
// float
System.out.println("基本类型:float 二进制位数:" + Float.SIZE);
System.out.println("包装类:java.lang.Float");
System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);
System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);
System.out.println();
// double
System.out.println("基本类型:double 二进制位数:" + Double.SIZE);
System.out.println("包装类:java.lang.Double");
System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);
System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);
System.out.println();
// char
System.out.println("基本类型:char 二进制位数:" + Character.SIZE);
System.out.println("包装类:java.lang.Character");
// 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台
System.out.println("最小值:Character.MIN_VALUE=" + (int) Character.MIN_VALUE);
// 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台
System.out.println("最大值:Character.MAX_VALUE=" + (int) Character.MAX_VALUE);
}
1bit表示1位,
1Byte表示一个字节
1B=8b
1024B=1KB
1024KB=1M
1024M=1G
电脑的32位和64位的区别是什么呢?
32位操作系统只可以使用32位的cpu,而64位的CPU既可以安装32位操作系统也可以安装64位操作 系统。
寻址能力简单点说就是支持的内存大小能力,
64位系统最多可以支达128 GB的内存,而32位系统最多只可以支持4G内存。
32位操作系统只可以安装使用32位架构设计的软件,
而64位的CPU既可以安装使用32位软件也可以 安装使用64位软件。
3.整形,浮点型,字符型扩展
十进制,八进制,十六进制等等的问题
十进制整数,如:99, -500, 0。
八进制整数,要求以 0 开头,如:015。
十六进制数,要求 0x 或 0X 开头,如:0x15 。
//整型
int i=10; int i2=010; int i3=0x10;
System.out.println(i); //10
System.out.println(i2); //8
System.out.println(i3); //16 1234567
银行金融业务用什么类型表示?
浮点型float,double的数据不合适在不允许舍入误差的金融计算领域
需要用到BigDecimal类,进行不产生舍入的精确数字计算
Java.math下面的两个有用的类:BigInteger和BigDecimal,这两个类可以处理任意长度的数
值。BigInteger实现了任意精度的整数运算。BigDecimal实现了任意精度的浮点运算。
字符型使用总结:
- 浮点数存在舍入误差,很多数字不能精确表示,如果不需要进行舍入误差的精确数字计算,需要BigDecimal
- 避免比较中使用浮点数(由于字长有限,浮点数能够精确表示的数是有限的,因而也是离散的。浮点数一般都存在舍入误差,很多数字无法精确表示,其结果只能是接近,但不等于)
单引号用来表示字符常量。例如‘A’是一个字符,它与“A”是不同的,“A”表示一个字符串。
char 类型用来表示在Unicode编码表中的字符。
2字节=16位
2的16次方=65536
public static void main(String[] args) {
char c1 = 'a'; char c2 = '中';
System.out.println(c1);
System.out.println((int) c1); //97
System.out.println(c2);
System.out.println((int) c2); //20013
}
Unicode具有从0到65535之间的编码,他们通常用从’u0000’到’uFFFF’之间的十六进制值来表示
(前缀为u表示Unicode)
char c3 = '\u0061';
System.out.println(c3); //a
三. 类型转换
转换从低级到高级(根据容量来看)
低 ------------------------------------> 高
byte,short,char—> int —> long—> float —> double
转换规则:
- 不能对Boolean类型进行类型转换
- 不能把对象类型转换成不相干类的对象
- 在把容量大的类型转换为容量小的类型时必须使用强制转换
- 转换过程中可能导致溢出或损失精度。
因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢
出。
四、变量,常量
1.变量
变量是什么:就是可以变化的量!
通过变量来操作内存空间中的数据,变量就是指代这个存储空间!存储空间是确定的,但是里面的值是不确定的。
- Java是一种强类型语言,每个变量都必须声明其类型。
- Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
int a, b, c; // 声明三个int型整数:a、 b、c
int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值
byte z = 22; // 声明并初始化 z
String s = "runoob"; // 声明并初始化字符串 s
double pi = 3.14159; // 声明了双精度浮点型变量 pi
char x = 'x'; // 声明变量 x 的值是字符 'x'。
2.常量
常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名=值;
final double PI=3.14;
final String LOVE="hello";
常量名一般使用大写字符。
3.命名规范
- 所以变量,方法,类名:见名知意
- 类成员变量:首字母小写与驼峰原则:monthMake
- 局部变量:首字母小写与驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodeMan
- 方法名:首字母小写和驼峰原则:run(),runRun();
总结
人会忘记,但是时间不会!!