强类型语言
- 要求变量的使用严格符合规定,所有变量都必须先定义后才能使用
弱类型语言
Java数据类型
示例
//整数
int num1 = 10;//
byte num2 = 20;
long num3 = 30;
short num4 = 30L;
//字符
char name = ‘国’
//字符串,String不是关键字,类
//String name = "人"
//布尔值:是非
boolean flag = true;
//boolean flag = false
//进制
int i = 10;
int i2 = 010;//八进制
int i3 = 0x10;//十六进制
//float有限 离散 舍入误差 大约 接近不等于
//double
float f = 0.1f;
double d1 = 1.0/10;
//f==d为false
float d1 = 2333213233f;
float d2 = d1+1;
//d1==d2 为true 出现这种情况告诉我们完全使用浮点数进行比较
char c1 = 'a';
char c2 = '中';
System.out.println((int)c1)//强制换行
//所有字符本质是数字
//编码 Unicode
char c3 = '\u0061';//a
char c31='\u0041';//A
//大小写十六进制差距10
//转义字符
//\t 制表符
//\n换行
//....
String sa = new String("hello world");
string sb = new String("hello world");
String sc = "hello world";
string sd = "hello world";
//sa == sb false sc==sd true对象内存分析
//布尔值扩展
boolean flag =true;
if(flag == true){}
if(flag){}
//二者等同
类型转换
由于java是强制型语言,所以要进行有些运算的时候,需要用到类型转换
低--------》高:
byte,short,int,long,float,double
运算中,不同类型的数据先转换为同一个类型,然后进行运算
注意点:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题