• day04


    day04

    数据类型

    java是一门强类型语言,所有变量都必须经过规范的的定义,才能够使用。**

    八大基本数据类型

    整数型(byte,int,short,long)

    1. byte

      byte占一个字节范围(2的8次方),范围为-128~127

    2. int

      int型占四个字节范围(2的32次方),范围在21亿

    3. short

      short占两个字节范围(2的16次方),范围在-32768~32767

    4. long

      long占八个字节范围(2的32次方),范围很大很大,要在数字后面加上L。

      long num = 12L;
      

    浮点型(float,double)

    1. float

      float占四个字节范围,要在数字后面加上F。

      float num1 = 10.2F;
      
    2. double

      double占八个字节范围

    字符型

    char

    char占两个字节范围,只能表示一个字符。

    char ch1 = '中';
    char ch2 = '国';
    

    String不是关键字,是一个类。

    布尔型

    boolean

    Boolean占一个位,只有true或false。


    public class demo02 {
        public static void main(String[] args) {
            //八大基本数据
    
            //整数
            int num1= 10;  //最常用
            //byte num2= 200;  //byte占一个字节范围 -128-127
            byte num2= 20;
            short num3 = 30;
            long num4 = 30L; //long类型要在数字后面加个L
    
            //小数:浮点数
            float num5 = 50.1F; //float类型要在后面加上F
            double num6 =3.141592535;
    
            //字符
            char nam = 'Z';//char name = 'ff'; 会报错,char变量只能定义一个字符
    
            //字符串,string不是关键字,是类
            //String namea = "秦疆";
    
            //布尔值:是非
            boolean flag = true;
            //boolean flag = false;
            System.out.print("flag");
            //System.out.print(flag);
    
    
        }
    }
    
    

    整数扩展

    1. 二进制表示0b

      int i = 0b10;	//二进制表示0b 
      System.out.println(i);	//输出十进制表示为2
      
    2. 十进制表示

      int i1 = 10;	//十进制表示
      System.out.println(i1);	//输出十进制表示为10
      
    3. 八进制表示0

      int i2 = 010;	//八进制表示0
      System.out.println(i2);	//输出十进制表示为8
      
    4. 十六进制表示0x

      int i3 = 0x10;	//十六进制表示0x
      System.out.println(i3);	//输出十进制表示为16
      

    浮点数扩展

    涉及银行业务怎么表示?钱是有小数点表示的

    float f = 0.1f;
    double d = 0.1;
    System.out.println(f=d);	//false
    
    float f1 = 13325255f;
    float f2 = f1+1;
    System.out.println(f1=f2);	//true
    

    当用浮点数表示时,是有限并且离散的,表示的是数值的大约情况,其中存在舍入误差,数值接近但不等于,所以用浮点数进行比较时,都不会得到相等的结果。

    ----------------------------最好完全避免使用浮点数进行比较------------------------------------

    ----------------------------最好完全避免使用浮点数进行比较------------------------------------

    ----------------------------最好完全避免使用浮点数进行比较------------------------------------

    以后会提到,对小数进行比较可使用一个java分装好的数学工具类BigDecimal


    字符串扩展

    char c1 = 'a';
    char c2 = '中';
    System.out.println(c1);	//a
    System.out.println(c2);	//中
    System.out.println((int)c1);	//(int)c1强制转换	输出97 字符‘a‘对应的编码
    System.out.println((int)c2);	//(int)c2强制转换	输出20013 字符‘中’对应的编码
    

    所有的字符本质上也是数字,java存在一个Unicode表对字符和数字有个一一对应的关系,其中字符a则对应97,字符中则对应20013。Unicode编码用两个字节来表示。U0000~UFFFF

    char c3 = 'u0061';
    System.out.println(c3);		//输出a 这里有十六进制与十进制的转化你关系,0x61则为十进制97 所以输出a
    

    其中u则为表示十六进制的转义字符,还有其他的转义字符,例如:d 表示八进制、 制表符table、 换行符等。

    System.out.println("hello	world");	
    System.out.println(("hello
    world");	
    

    这里还有一个伏笔:

    String sa = new String("hello world");
    String sb = new String("hello world");
    System.out.println((sa==sb);	//flase
    String sc = 'hello world';
    String sd = 'hello world';
    System.out.println(sc==sd);		//true	
    

    这里涉及对象,要从内存分析,此留下疑问,待以后解决。


    布尔值扩展

    boolean flag = ture;
    if(flag==ture){}	//新手
    if(flag){}	//老手 代码简洁易懂
    

    2020 9.7 21:23

  • 相关阅读:
    用 Java 写一个折半查找?
    阐述 ArrayList、Vector、LinkedList 的存储性能和特性?
    简述一下面向对象的”六原则一法则”?
    如何通过反射调用对象的方法?
    用 Java 写一个单例类?
    事务的 ACID 是指什么?
    如何通过反射创建对象?
    如何通过反射获取和设置对象私有字段的值?
    JDBC 中如何进行事务处理?
    获得一个类的类对象有哪些方式?
  • 原文地址:https://www.cnblogs.com/vae-469395/p/13629339.html
Copyright © 2020-2023  润新知