-
局部变量
-
类变量(静态变量)
-
成员变量(非静态变量)
强类型语言,要求变量的使用严格符合规定,所有变量都必须先定义后才能使用
八大基本数据类型(primitive type)//整数 int num1=10;//最常用-2147483648——2147483647 占四个字节 byte num2=20;//-128——127 占一个字节 short num3=30; //占两个字节 long num4=30l;//long类型要在数字后面加个L 占八个字节 //小数:浮点数 float num5=50.1f;//float类型要在数字后面加个F 占四个字节 double num6=3.141592653589793238462643; //占八个字节 //字符 char namee='a';//char为字符 占两个字节 仅可有一个字符(如‘张’正确 ‘张张’错误) //字符串 **String不是关键字,而是一个类** String namea="张张" //布尔值 仅有true false两个值 代表是非 占一位 boolean flag=true; boolean flag=false;引用类型(reference type)
String
类 接口 数组
拓展整数拓展(进制)
int i1=10; int i2=010;//八进制0 010=8 int i3=0x10;//十六进制0x 0-9 A-F 0x10=16
浮点数拓展
有限 离散 舍入误差 大约 接近但不等于
最好完全避免使用浮点数进行比较
BigDecimal //数学工具类 用其进行银行业务的办理
字符拓展
强制转换
char c1='a'; char c2-'张'; System.out.println((int)c1);//强制转换 //所有字符本质还是数字
编码 Unicode 表 2字节 0-65536 Excel 2 16=65536
U0000 UFFFF
char c3='u0061'; // u代表转义 System.out.println(c3); //输出a
转义字符
t 制表符
n 换行
布尔值拓展
boolean flag=true;
if (flag==true){}
if (flag){}
//less is more 代码要精简易读
类型转换
强制转换
从高到低
(类型)+变量名
public static void main(String[] args) {
int i=128;
byte b=(byte)i; //内存溢出
System.out.println(i);
System.out.println(b);
}
自动转换
低到高
public static void main(String[] args) {
int i=128;
double b=i;
System.out.println(i);
System.out.println(b);
}
注意
1.不能对布尔值进行转换
2.不能把对象类型转化为不相干的类型 3.把高容量转化为低容量时强制转换,反之自动转换, 4.转换的时候可能存在内存溢出或精度问题 5.操作比较大的数时,注意溢出问题
变量 变量1.Java变量是程序中最基本的储存单元,其要素包括变量名,变量类型和作用域 2.变量名为合法标识符 3.变零声明为一条完整语句,每个声明均以分号结束
变量的作用域 static int allClicks=0; //类变量
String str="hello world"; //实例变量
public void method(){
int i=0; //局部变量
}
类变量
加关键词 static (静态的)
实例变量
在类里面,从属于对象,如果不自行初始化,则输出这个类型的默认值 0 0.0 u000 布尔值默认false
除了基本类型,其它默认值均为null
Z z=new Z();//Z为类名 //变量类型 变量名字=new Z()
局部变量
位于方法里,必须声明和初始化值
常量constant 理解为一种特殊的变量,其值被设定后,在程序运行过程中不允许被改变
关键字 final 常量名一般用大写字符
//final 常量名=值; final double PI=3.14; //修饰符,不存在先后顺序 static final double PI=3.14; //等同于 final static double PI=3.14;



