数据类型
java中有两种数据类型,一种是基本数据类型,另一种是引用数据类型。java属于强类型语言,所有数据不是基本数据类型就是引用数据类型。
1.基本数据类型
基本数据类型主要包括“四类八种”,分别是整型(
byte、
short、
int、
long)、浮点型(
float、
double)、字符型(
char)、布尔型(
boolean)。
1.1整型
简单来说,整型就是整数。
整型的分为两种:1.整型常量 2.整型变量
1.1.1 整型常量:
(1)整型多为十进制 表现形式,也可是八进制或十六进制。
(2)java中整型都是带符号数
(3)整型默认为int型
1.1.2整型变量:
(1)按照长度的不同可以分为:byte、short、int、long四种。
(2)每种类型表示范围不同:
byte 表示范围:
-128~127
short 表示范围:
正负3万多
int 表示范围:
正负21亿多
long 表示范围:很大很大(一般很少用到这种数据)
代码示例:
public class TestVar002{
public static void main(String[] args){
int num1=12;//十进制
System.out.println(num1);
int num2=012;//八进制 以0开头
System.out.println(num2);
int num3=0x12;//十六进制 以0x或者0X开头
System.out.println(num3);//结果都会以十进制输出,它会给我们自动进行一个转化。
byte b=66;//128就超出范围,那么报错。
System.out.println(b);
short s= 10000;
System.out.println(s);
int i=12345678;
System.out.println(i);
long num=12345678910L;
//整数类型默认都是int类型的,要是想要把它赋给一个long类型的,那么就要在后面加上l或者L,推荐L
System.out.println(num);
}
}
1.2浮点型
浮点型又叫
实型,可以简单理解为带有小数点的数
浮点型也分为:1.浮点型常量 2.浮点型变量
1.1.1浮点型常量
(1)以十进制形式表示,由小数点和数字组成,如12.5 , 1.6
(2)也可用科学计数法:12E3 表示 :12乘以10的3次方
1.1.2浮点型变量
根据长度不同可分为:float和double类型 二者表示的精度不同
float
四字节
精度7 - 8位
double
八字节
精度15 - 16位
在java中默认为
double类型,想要赋值为float类型,需要加上F或f 如:float a = 1.23f
代码示例:
public class TestVar003{
public static void main(String[] args){
float f=3.14F;//浮点类型的数据默认是double 类型的,要想把它给float类型,那么要在后面加F或者f。
System.out.println(f);
float f2=3.1415926532398F ;
System.out.println(f2);
double d=3.13423987347597545975;
System.out.println(d);
double d2=314E-2;//科学计数法表现形式 3.14
System.out.println(d2);
//最好不要进行浮点数的比较
float f3=0.3F; // 0.30000000001 0.29999999999
double d3=0.3;
System.out.println(f3==d3);//false 代表了不相等
/*
= 赋值
== 比较是否相等 结果返回给我什么?true /false
*/
}
}
1.3字符型
字符型常量是有单引号括起来的一个单个字符,如:"a" , "f"。
java中有一种以 \ 开头的字符,后面的字符被赋以另外的含义,我们称之为
转义字符,如:\n(换行符)、\b(退格符)、\t(制表符).
字符型的定义格式:如
char ch = "a";
代码示例:
public class TestVar004{
public static void main(String[] args){
char ch1='a';
System.out.println(ch1);
char ch2='A';
System.out.println(ch2);
char ch3='中';
System.out.println(ch3);
char ch4=' ';//用单引号括起来的单个字符,0个不行,多个也不行。
System.out.println(ch4);
//在java中,都占一个字符。
System.out.println("--------------------------------------------");
//转义字符:\ 将后面的字母转化为另一种含义。
char ch5='\n';//换行
System.out.println("姓名:"+ch5+"ljly");
char ch6='\t';//Tab制表符 =8 个空格 从本行第一个位置开始算起
System.out.println("性别:"+ch6+"女");
System.out.println(ch6+"你好");
System.out.println("--------------------------------------------");
char ch7='\r';//回车 --回到本行的第一个位置
System.out.println("aaa"+ch7+"b");//baa
System.out.println("--------------------------------------------");
System.out.println("aaa\bbb");//aabb \b---退格
System.out.println("#############################################");
char ch8='A';
System.out.println(ch8);//A
System.out.println(ch8+16);//81 ch8---65
System.out.println(81-ch8);//16
//暂时来看,字符类型在内存中存的是对应的ASCII码表中的那个值。
System.out.println("#############################################");
char ch9='中';
System.out.println(ch9);//中
System.out.println(ch9+30);//20043
//总结就是:字符类型在内存中存的是对应的Uicode码表中的那个值。(ASCII是Unicode表中的前128位)
System.out.println("#############################################");
System.out.println((char)(ch9+30));//之
System.out.println((int)ch9);//20013
}
}
1.4布尔型
布尔型常量值只有
true和false两种。
布尔型变量为Boolean型,取值范围可以是true或者false。
定义格式:
Boolean flag = true;
代码示例:
public class TestVar005{
public static void main(String[] args){
boolean flag1=true;//声明一个布尔类型的一个变量
System.out.println("flag1="+flag1);
boolean flag2=false;
System.out.println("flag2="+flag2);
boolean flag3=5<9;//条件表达式只能返回两个值,true,false.
System.out.println("flag3="+flag3);//true
boolean flag4=23>89;
/*
条件判断:如果满足()中的内容,就是()中的条件判断如果为true,那么就执行{}中的语句。
= 赋值
== 判断左右是否相等
*/
if(flag4==true){//false==true -----> false
System.out.println("第一个数大于第二个数");
}
if(flag4==false){//false==false------>true
System.out.println("第一个数小于第二个数");
}
}
}
2.引用数据类型
java中,除了基本数据类型外,其他的都是引用数据类型。如:
类、字符串、数组。基本数据类型和引用数据类型在内存占的位置不同,基本数据类型在内存中占
一块,引用数据类型在内存中占
两块。引用数据类型后面会一次详细讲解,这里不多说。