zoukankan      html  css  js  c++  java
  • java学习笔记----数据类型,变量,常量

    一、数据类型

      1、基本类型(8种,又称内置数据类型)。6种数字类型(byte,short,int,long,float,double),一种字符型(char),一种布尔类型(boolean)。

      

    byte:

    • byte数据类型是8位、有符号的,以二进制补码表示的整数;占1个字节;
    • 最小值是-128(-2^7);
    • 最大值是127(2^7-1);
    • 默认值是0;
    • byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
    • 例子:byte a = 100,byte b = -50。

    short:

    • short数据类型是16位、有符号的以二进制补码表示的整数;占2个字节;
    • 最小值是-32768(-2^15);
    • 最大值是32767(2^15 - 1);
    • Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
    • 默认值是0;
    • 例子:short s = 1000,short r = -20000。

    int:

    • int数据类型是32位、有符号的以二进制补码表示的整数;占4个字节;
    • 最小值是-2,147,483,648(-2^31);
    • 最大值是2,147,483,647(2^31 - 1);
    • 一般地整型变量默认为int类型;
    • 默认值是0;
    • 例子:int a = 100000, int b = -200000。

    long:

    • long数据类型是64位、有符号的以二进制补码表示的整数;占8个字节;
    • 最小值是-9,223,372,036,854,775,808(-2^63);
    • 最大值是9,223,372,036,854,775,807(2^63 -1);
    • 这种类型主要使用在需要比较大整数的系统上;
    • 默认值是0L;必须在后面加“L”
    • 例子: long a = 100000L,Long b = -200000L。

    float:

    • float数据类型是单精度、32位、符合IEEE 754标准的浮点数;占4个字节;
    • float在储存大型浮点数组的时候可节省内存空间;
    • 默认值是0.0f;必须在数字后面加“f”或“F”
    • 浮点数不能用来表示精确的值,如货币;
    • 例子:float f1 = 234.5f。

    double:

    • double数据类型是双精度、64位、符合IEEE 754标准的浮点数;占8个字节;
    • 浮点数的默认类型为double类型;
    • double类型同样不能表示精确的值,如货币;
    • 默认值是0.0d;
    • 例子:double d1 = 123.4。

    boolean:

    • boolean数据类型表示一位的信息;
    • 只有两个取值:true和false;
    • 这种类型只作为一种标志来记录true/false情况;
    • 默认值是false;
    • 例子:boolean one = true。

    char:

    • char类型是一个单一的16位Unicode字符;占2个字节;前256个表示特殊字符;
    • 最小值是’u0000’(即为0);
    • 最大值是’uffff’(即为65,535);
    • char数据类型可以储存任何字符;
    • 例子:char letter = ‘A’。

    注意:整形默认值:int 

       浮点型默认值:double

    实例:

    说明:对于数值类型的基本类型的取值范围,我们无需强制去记忆,因为它们的值都已经以常量的形式定义在对应的包装类中了。

    public class PrimitiveTypeTest {  
        public static void main(String[] args) {  
            // byte  
            System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);  
            System.out.println("包装类:java.lang.Byte");  
            System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  
            System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  
            System.out.println();  
      
            // short  
            System.out.println("基本类型:short 二进制位数:" + Short.SIZE);  
            System.out.println("包装类:java.lang.Short");  
            System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);  
            System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);  
            System.out.println();  
      
            // int  
            System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);  
            System.out.println("包装类:java.lang.Integer");  
            System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);  
            System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);  
            System.out.println();  
      
            // long  
            System.out.println("基本类型:long 二进制位数:" + Long.SIZE);  
            System.out.println("包装类:java.lang.Long");  
            System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);  
            System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);  
            System.out.println();  
      
            // float  
            System.out.println("基本类型:float 二进制位数:" + Float.SIZE);  
            System.out.println("包装类:java.lang.Float");  
            System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);  
            System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);  
            System.out.println();  
      
            // double  
            System.out.println("基本类型:double 二进制位数:" + Double.SIZE);  
            System.out.println("包装类:java.lang.Double");  
            System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);  
            System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);  
            System.out.println();  
      
            // char  
            System.out.println("基本类型:char 二进制位数:" + Character.SIZE);  
            System.out.println("包装类:java.lang.Character");  
            // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台  
            System.out.println("最小值:Character.MIN_VALUE="  
                    + (int) Character.MIN_VALUE);  
            // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台  
            System.out.println("最大值:Character.MAX_VALUE="  
                    + (int) Character.MAX_VALUE);  
        }  
    }

    实例结果:

    基本类型:byte 二进制位数:8
    包装类:java.lang.Byte
    最小值:Byte.MIN_VALUE=-128
    最大值:Byte.MAX_VALUE=127
    
    基本类型:short 二进制位数:16
    包装类:java.lang.Short
    最小值:Short.MIN_VALUE=-32768
    最大值:Short.MAX_VALUE=32767
    
    基本类型:int 二进制位数:32
    包装类:java.lang.Integer
    最小值:Integer.MIN_VALUE=-2147483648
    最大值:Integer.MAX_VALUE=2147483647
    
    基本类型:long 二进制位数:64
    包装类:java.lang.Long
    最小值:Long.MIN_VALUE=-9223372036854775808
    最大值:Long.MAX_VALUE=9223372036854775807
    
    基本类型:float 二进制位数:32
    包装类:java.lang.Float
    最小值:Float.MIN_VALUE=1.4E-45
    最大值:Float.MAX_VALUE=3.4028235E38
    
    基本类型:double 二进制位数:64
    包装类:java.lang.Double
    最小值:Double.MIN_VALUE=4.9E-324
    最大值:Double.MAX_VALUE=1.7976931348623157E308
    
    基本类型:char 二进制位数:16
    包装类:java.lang.Character
    最小值:Character.MIN_VALUE=0
    最大值:Character.MAX_VALUE=65535

    说明:“E+(-)数字”表示E之前的数字乘以10的“数字”次方

    二、引用数据类型

      引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,指向一个地址值,变量一旦声明后,类型就不能被改变了。

    • 对象、数组,接口都是引用数据类型。
    • 所有引用类型的默认值都是null。
    • 一个引用变量可以用来引用与任何与之兼容的类型。
    • 例子:Site site = new Site("Runoob")。

    三、变量

       数据类型   变量名  = 初始化值

      eg;int  a = 0;

    四、常量

      final 数据类型  常量名 = 初始化值

    五、Java语言整型常量的四种表示形式:

      二进制整数,0b或0B开头,如:int a = 0B110;

      十进制整数,如:int a = 17;

      八进制整数,要求以0开头,如 int a = 012;

      十六进制整数,要求0X或0x开头,如int a = 0x12;

    六、数据类型转换

      显示转换: 容量小的类型自动转换为容量大的类型,不需要用强转符号

      byte,short,char--->int--->long--->float--->double

      eg:大容量 = 小容量

       

     int a = ‘c’;

       隐私转换(强制转换):容量大的强制转换为容量小的,需要用强制符号,强制转换会丧失精度

      eg: 小容量 =(强制转换)大容量

        

    int a =(int)35.3;

     

  • 相关阅读:
    iOS设计模式之一:MVC模式和单例模式
    高清图标搜索引擎
    中国地址英文书写格式(转载)
    iOS设置状态栏样式,statusBarStyle
    关于iOS启动页launchImage和各个屏幕使用的分辨率
    使用终端命令行将本地项目上传到Github
    iOS项目梳理-第一天- 项目框架搭建
    静态库合成
    iOS中的通知
    iOS UserSize Classes
  • 原文地址:https://www.cnblogs.com/flei/p/6597052.html
Copyright © 2011-2022 走看看