2-基本数据类型

Posted 年小猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2-基本数据类型相关的知识,希望对你有一定的参考价值。

基本数据类型
整数类型:byteshortintlong
浮点数类型:floatdouble
字符类型:char
布尔类型:boolean

计算机内存的最小存储单元是字节(byte)即8位二进制
byte        --->    1
short / char    --->     2
int / float        --->    4
long / double    --->    8


整型
取值范围 :
byte:-128 ~ 127
short: -32768 ~ 32767
int: -2147483648 ~ 2147483647
long: -9223372036854775808 ~ 9223372036854775807


浮点型
浮点类型的数就是小数,因为小数用科学计数法表示的时候,小数点是可以“浮动”的。
如1234.5可以表示成12.345x10²,也可以表示成1.2345x10³,所以称为浮点数。
对于float类型,需要加上f后缀。
float类型可最大表示3.4x10³?,而double类型可最大表示1.79x10³??

布尔类型
布尔类型boolean只有 truefalse 两个值。
boolean b1 = true;
boolean b2 = false;
boolean isGreater = 5 > 3; // 计算结果为true
int age = 12;
boolean isAdult = age >= 18; // 计算结果为false

Java对boolean的存储并没有做规定,因为理论上存储boolean只需要1 bit,但是通常JVM内部会把boolean表示为4字节整数。

字符类型
字符类型char表示一个字符。Java的char类型除了可表示标准的ASCII外,还可以表示一个Unicode字符:
public class Main {
    public static void main(String[] args) {
        char a = A;
        char zh = ;
        System.out.println(a);
        System.out.println(zh);
    }
}


!:注意char类型使用单引号    ,且仅有一个字符,要和双引号  "  的字符串类型区分开。

常量
定义变量的时候,如果加上 final 修饰符,这个变量就变成了常量:
final double PI = 3.14; // PI是一个常量

常量在定义时进行初始化后不可再次赋值,再次赋值会导致编译错误。
根据习惯,常量名通常全部大写。

var关键字
有些时候,类型的名字太长,写起来比较麻烦。例如:
StringBuilder strb = new StringBuilder();

这个时候,如果想省略变量类型,可以使用var关键字
var strb = new StringBuilder();

编译器就会自动识别  strb 为  new StringBuilder()  。

*变量的作用范围 
在Java中,多行语句用{ }括起来,构成语句块,编译器可以识别出语句块的开始和结束。而在语句块中定义的变量,它有一个作用域,就是从定义处开始,到语句块结束。超出了作用域引用这些变量,编译器会报错。而在定义变量时,要遵循作用域最小化原则,尽量将变量定义在尽可能小的作用域,并且,不要重复使用变量名。
{
    ...
    int i = 0; // 变量i从这里开始定义
    ...
    {
        ...
        int x = 1; // 变量x从这里开始定义
        ...
        {
            ...
            String s = "hello"; // 变量s从这里开始定义
            ...
        } // 变量s作用域到此结束
        ...
        // 注意,这是一个新的变量s,它和上面的变量同名,
        // 但是因为作用域不同,它们是两个不同的变量:
        String s = "hi";
        ...
    } // 变量x和s作用域到此结束
    ...
} // 变量i作用域到此结

 

以上是关于2-基本数据类型的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 代码片段

片段内带有基本适配器的列表视图

golang数据类型和各类型转换注意细节图文+代码

如何为 apollo 客户端生成片段类型?

c_cpp Robolution基本代码片段

在代码片段中包含类型转换