[Android-Java]1.基本概念-4八大基本数据类型
四、八大基本数据类型
在了解基本数据类型之前呢,我觉得大家有必要先来了解一下电脑的构成应该都玩过游戏,就比如魔兽世界来说,很大那么这个很大指的是什么呢?存储空间,对的,也就是所谓的硬盘,是电脑必不可缺少的一部分,它的单位现在已经基本上都是TB或者GB了。
然而最早期的电脑硬盘可能只是以MB开始的~说这部分的原因就是为了让大家了解到,我们的电脑是有存储空间的,并且呢,存储空间也都是有一定的范围的。
好了引子说完了,那么下面来说一下我们的八大基本数据类型,首先就是类型的分类
基本数据类型.png从上面这个图,我们应该可以看出来,数据类型有八种,而后面都跟了这种数据类型的一个存储范围,对,没错,就是你想的这样,其实我们的数据类型,就是可以看做是一个小型的存储器,用来存放一定范围大小的值。
好~那么首先先来介绍一下整数型的,顾名思义,其中能存放的内容只能是整数,按照整数的大小不同,可以选择不同的类型。
这里可能有人会提出一个问题,我不管大小,都选择最大的long类型,肯定不会出问题。这么理解没有错,但是你也要为人家内存考虑考虑啊~long类型默认8个字节,意思就是不管你其中的内容有没有这么大,内存就会给你这么大的空间。举个小例子,你去买房子,明明你只有一个人,你却要买400平米的房子,多出来的那部分空间,就没有任何用处了,如果你任性,那么,就任性把。
好了,刚才举了一个小例子,其实就是为了告诉大家,要视情况而定,选择不同的数据类型。
基本概念大家有了一定的了解了,那么现在呢,我们来试着用代码来鞋垫东西吧~
// 定义一个用来存放钱的变量
int money = 100;
在上述代码中,我们可以看到,类型是放在第一位的,而后面跟了一个“money”,叫做变量名,之后利用“=”号进行赋值,完成了一个基本变量的定义。
当然,这种情况是直接赋值的情况,也可以只定义不复制。效果如下
// 定义一个用来存放钱的变量
int money;
好了,基本的变量使用我们看到了,那么下面我们来具体的研究一下,每一种数据类型的区别。
数值型
byte-short-int-long:只能存放整数,区别在于存放内容所占的空间大小有一定的区别
字符型
char:既可以放数字,也可以放单个的字符。原因是char类型存放的值,其实是和ascii编码中的值是一样的。下面附带一张ascii编码,大家可以参考一下:
ascii编码表.png从上表可以看到,小写字母“a”对应的值为97,也就是说如果我们给char类型的变量赋值为97的话,这时候输出的结果应该是“a”。所以,char类型的值也是有范围的,不能超出ascii码表中的数值范围。当然,现在先简单的介绍一下,以后用到的时候会重新介绍。
浮点型
float-double:默认的小数类型,就算我们赋值为1,再输出的时候也会变成1.0,两种值的区别也是在于能存储的范围不一样。
逻辑型
boolean:叫做布尔,只有两个值,true和false,也就是真或者假。
下面我们在一个完整的代码中来试验一下:
public class HelloWorld{
public static void main(String[]args){
// byte类型值
byte priceA = 10;
// 打印输出priceA
System.out.println("priceA的值为:"+priceA);
// short类型值
short priceB = 10;
// 打印输出priceB
System.out.println("priceB的值为:"+priceB);
// int类型值
int priceC = 10;
// 打印输出priceC
System.out.println("priceC的值为:"+priceC);
// long类型值
long priceD = 10;
// 打印输出priceD
System.out.println("priceD的值为:"+priceD);
// char类型数值
char priceE = 97;
// 打印输出priceE
System.out.println("priceE的值为:"+priceE);
// char类型字符值
char priceF = 'a';
// 打印输出priceF
System.out.println("priceF的值为:"+priceF);
// float类型值
float priceG = 10;
// 打印输出priceG
System.out.println("priceG的值为:"+priceG);
// double类型值
double priceH = 10;
// 打印输出priceH
System.out.println("priceH的值为:"+priceH);
// boolean类型值
boolean priceI = true;
// 打印输出priceI
System.out.println("priceI的值为:"+priceI);
}
}