JAVASE基础 类型转化

数据类型

类型语言

    1. 强类型语言
        - 要求变量的使用要严格符合规定,所有变量,必须先定义后才能使用
        - 如:java 、c 等等就是属于着类
  2. 弱类型语言
      - 如:vb 、js

数据类型分为两大类

  1. 基本数据类型(primitive type)

    image-20210812120344255

    public class dom01 {
       public static void main(String[] args) {
           String  a = "hello";
           int num = 10;
        //八大数据类型
            int num2 = 10 ;
            byte num3 = 20 ;
            short num4 = 30 ;
            long num5 = 40L ;//long类型要在数字后面加L

           //小数:浮点型
           float num7 = 50.1F; //lfloat类型要在数字后面加个F
           double num6 = 3.1415926789283801332;


           //字符
           char name8 ='a';
           //字符串。string 不是关键字,类
           String name1 = "李鑫";

           //布尔值:是非
           boolean  flag =  true;
           // boolean flag = false;

      }
    }

     

  2. 引用类型

    除了上面的基本数据类型其他的都是引用类型

 




什么是字节

  1. 位(bit): 是计算机 内部数据 存储的最小单位,11001100是一个八位二进制

  2. 字节(byte): 是计算机中数据处理的基本单位, 习惯上用大写B来表示,

  3. 1B(byte,字节)= 8bit(位)

  4. 字符: 数值计算机中使用的字母、数字、字个符号、

     - **1bit表示1位。**
    - **1Byte表示有一个字节1B=8b,**
    - **1024B= 1kB**
    - **1024KB = 1M**
    - **1024M =1G**

32位操作系统和64位的区别

  1. 32位操作系统只能用32位的cpu,最多可以支持4Gb内存

  2. 64位的操作系统可以用32位的cpu也可以用64位的cpu,最多可以支持128g的内存

 

 

拓展数据类型(进制问题)

  1. 整数进制

    public class dom02 {
       public static void main(String[] args) {
           //整数拓展: 进制 二进制0b   十进制   八进制0   十六进制0x

           int i = 10;
           int i2 = 010;//十进制
           int i3 = 0x10; //十六进制0x

           System.out.println(i);
           System.out.println(i2);
           System.out.println(i3);
      }
    }

    image-20210812122343013

     


  1. 浮点数进制

    public class dom02 {
       public static void main(String[] args) {
    System.out.println("===========================================");
           //===========================================
           //浮点数的拓展   银行业务怎么表示?钱
           //一般用 BigDectimal 数学上工具
           //======================
           //float 有限 离散 舍入误差 大约 接近但不等于
           //注意最好避免 用浮点数进行比较
            float f= 0.1f; //0.1
           double d = 1.0/10; //0.1
           System.out.println(f==d);//false

           float d1 = 231823243294739249f;
           float d2 = d1+1;
           System.out.println(d1==d2);//true

      }

    }

image-20210812134236001


  1. 转义字符

    • \t  制表符
      \n  换行  
      \a
      响铃(BEL)
      007
      \b
      退格(BS) ,将当前位置移到前一列
      008
      \f
      换页(FF),将当前位置移到下页开头
      012
      \n
      换行(LF) ,将当前位置移到下一行开头
      010
      \r
      回车(CR) ,将当前位置移到本行开头
      013
      \t
      水平制表(HT) (跳到下一个TAB位置)
      009
      \v
      垂直制表(VT)
      011
      \\
      代表一个反斜线字符''\'
      092
      \'
      代表一个单引号(撇号)字符
      039
      \"
      代表一个双引号字符
      034
      \?
      代表一个问号
      063
      \0
      空字符(NUL)
      000
      \ddd
      1到3位八进制数所代表的任意字符
      三位八进制
      \xhh
      十六进制所代表的任意字符
      十六进制

 

  1. 小案例

    String sa = new String( "hello,world");
    String sb = new String("hello,world");
    System.out.println(sa==sb);//false 注释:sa,sb,存在地址中,所以不等
    String sc = ( "hello,world");
    String sd = ("hello,world");
    System.out.println(sc==sd);//true 相等的
  2. 布尔值扩展

     boolean flag = true;
    if(flag ==true){}//新手写代码
    if(flag){}//老手
    //less is more 代码要精简易读
  3.  

posted @ 2021-08-18 11:35  炽焱--1  阅读(48)  评论(0)    收藏  举报