Java数据类型详解

2021-06-03 08:04

阅读:331

标签:大括号   完全   -128   The   注解   hello   demo   详解   银行   

数据类型

强类型语言

Java是一种强类型语言,对每一种数据都规定了范围。

变量的使用要严格符合规定,所有变量必须先定义后才能使用

弱类型语言

要求没有强类型语言严格,比较随意

计算机存储单元

我们知道计算机是可以用来存储数据的,但是无论是内存还是硬盘,计算机存储设备的最小信息单元叫“位(bit)”,我们又称之为“比特位”,通常用小写的字母”b”表示。而计算机中最基本的存储单元叫“字节(byte)”,

通常用大写字母”B”表示,字节是由连续的8个位组成。

存储单位换算

1B(字节) = 8bit
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB

数据类型的分类

基本数据类型

数据类型 关键字 内存占用(字节) 取值范围
整数类型 byte 1 -128~127
short 1 -32768~32767
int 4 -2的31次方到2的31次方-1
long 8 -2的63次方到2的63次方-1
浮点类型 float 4 负数:-3.402823E+38到-140298E-45 正数:1.401298E-45到3.402823E+38
double 8 负数:-1.797693E+308到-4.9000000E-324 正数:4.9000000E-324到1.797693E+308
字符类型 char 2 0—65535
布尔类型 boolean 1位 true,false
  • 注意

    ? e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

    ? 在java中整数默认是int类型,浮点数默认是double类型。

    public class Demo{
        public static void main(String[] args){
            //八大基本数据类型
            
            //整数
            int num1=10; //最常用
            byte num2=20;
            short num3=30;
            long num4=40L; //long类型要在数字后边加个L
            
            //浮点类型:小数
            float num5=50.1F; //float类型要在数字后边加个F
            double num6=60.666666666;
                
            //字符
            char name=‘A‘;
            //字符串String是类,不是关键字
            String name1= "是类";
            
            //布尔值:是非对错
            boolean t=true;
            boolean f=false;
        }
    }
    

    注意事项

    1. 在同一对大括号中,变量名不能重复。
    2. 变量在使用之前,必须初始化(赋值)。
    3. 定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。因为整数默认是int类型,整数太大可能超出int范围。
    4. 定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是double, double的取值范围是大于float的,类型不兼容。
    

引用数据类型

除了基本数据类型以外的都叫引用数据类型

  • 类、枚举、注解
  • 接口
  • 数组

面试相关

public class Demo01 {
    public static void main(String[] args) {
        //整数
        //进制 二进制0b 十进制  八进制0  十六进制0x
        int i1 = 10;   //十进制
        int i2 = 010;  //八进制0
        int i3 = 0x10; //十六进制0x  0~9 A~F
        System.out.println(i1);  //10
        System.out.println(i2);  //8
        System.out.println(i3);  //16
        System.out.println("----------------------------");

        //浮点
        //银行业务精确嘛?? 以后会用到 BigDecimal 数学工具类
        //float
        //double
        float f = 0.1F; //0.1
        double d = 1.0/10; //0.1
        System.out.println(f==d); //false
        System.out.println();

        float f1 = 45613456751546F;
        float f2 = f1+1;
        System.out.println(f1==f2); //true 一个比较大的数加1还等于他本身
        //=================================
        // 结论:浮点类型损失精度;浮点数不能表示精确的数值;不能用于比较和表示货币
        // 最好完全避免使用浮点数进行比较
        // 最好完全避免使用浮点数进行比较
        // 最好完全避免使用浮点数进行比较
        //====================================
        System.out.println("-----------------------");

        //字符
        char c1 = ‘a‘;
        char c2 = ‘中‘;
        System.out.println(c1); //a
        System.out.println((int)c1);  //97 前边加int是强制转换

        System.out.println(c2); //中
        System.out.println((int)c2); //20013
        //所有的字符本质还是数字
        //编码 Unicode (97 = a  65 = A)
        // 区间范围 U0000 UFFFF
        char c3 = ‘\u0061‘;
        System.out.println(c3); //a

        //转义字符
        // \t 制表符(空格)
        // \n 换行
        // .....
        System.out.println("hello\tworld"); //hello 	world
        System.out.println("hello\nworld");

        //布尔
        boolean b = true;
        if (b==true){}
        //上下是相等的
        if (b){}


    }

Java数据类型详解

标签:大括号   完全   -128   The   注解   hello   demo   详解   银行   

原文地址:https://www.cnblogs.com/cxofblog/p/14679122.html


评论


亲,登录后才可以留言!