java学习day06

public class Demo03 {
    public static void main(String[] args) {
        /*整数拓展: 二进制0b   十进制     八进制0    十六进制0x
        如:
         */
        int i =10;      //十进制   输出结果为:10
        int i1 =0b10;       //二进制   输出结果为:2
        int i2 =010;        //八进制   输出结果为:8
        int i3 =0x10;       //十六进制  输出结果为:16
        System.out.println(i);
        System.out.println(i1);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println("============================");
        //======================================================================
        //======================================================================


        //浮点数拓展:float、double
        //例1:
        float num1 = 0.1f;
        double num2 = 1.0/10;
        System.out.println(num1);   //输出结果为0.1
        System.out.println(num2);   //输出结果为0.1
        System.out.println(num1==num2);     //“==”表示两个数是否相等。输出结果为false
        //例2:
        float n1 = 45123165165f;
        float n2 = n1 + 1;
        System.out.println(n1==n2);     //输出结果为true
        /*结论:
        浮点数能表现的字长是有限的,离散的,存在舍入误差,它的结果只能是个大约数,即接近但不等于
        所以 最好完全避免使用浮点数进行比较
        尤其是银行业务,一般使用另一种类来表示:Big'Decimal,数学工具类
         */
        System.out.println("============================");
        //======================================================================
        //======================================================================


        //字符拓展:
        char c1 = 'a';
        char c2 = '中';
        System.out.println(c1);
        System.out.println((int)c1);    //强制转换,需要转换的类型加()
        //类型排序(从低到高):byte、short、char——>int——>long——>float——>double
        System.out.println(c2);
        System.out.println((int)c2);
        //所有字符本质还是数字
        //char是2个字节,它涉及一个编码表,即Unicode编码(范围0~65536),例如:97=a;65=A
        System.out.println("============================");
        //======================================================================
        //======================================================================


        //转义字符:如
        // \t:制表符;\n:换行;等
        System.out.println("hello\tworld!");    //输出结果:hello    world
        System.out.println("hello\nworld!");    //输出结果:hello
        //                                                 world
        String s1 =new String("helloworld");
        String s2 =new String("helloworld");
        System.out.println(s1==s2);     //输出结果:false

        String s3 ="helloworld";
        String s4 ="helloworld";
        System.out.println(s3==s4);     //输出结果:true
        //      why???
        System.out.println("============================");
        //======================================================================
        //======================================================================


        //布尔值拓展
        boolean flag = true;
        if (flag){}
        if (flag==true){}
        //if(如果):判定语句
        //在这里,(flag)与(flag==true)是同一含义,因为默认为true,一般都省略后面的==true

    }
}
上一篇:day06


下一篇:day06_非功能测试丶状态迁移法