数据类型拓展 面试题

public class Demo3 {
    public static void main(String[] args) {
        //整数拓展  进制  二进制ob   十进制   八进制0   十六进制0x
        // int byte short long
        int num1=0b10;//二进制ob
        int num2=10;
        int num3=010;//八进制0
        int num4=0x10;//十六进制0x开头0-9 A-f f:16

        System.out.println(num1);
        System.out.println(num2);
        System.out.println(num3);
        System.out.println(num4);

        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 否


        float f1=12151312128f;
        float f2=f1 +2;

        System.out.println(f1==f2);//true 是
        //数据过大时,会找出精度丢失
        //得出结论 最好避免使用浮点数进行比较 最好避免使用浮点数进行比较 最好避免使用浮点数进行比较

        System.out.println("-------------------分割线------------------------");

        //字符拓展
        //char
        char i='a';
        char i2='龙';

        System.out.println(i);
        System.out.println(i2);
        System.out.println((int)i);//强制转换
        System.out.println((int)i2);//强制转换
        //所有的字符本质还是数字
        //编码  Unicode表:(97=a  65=A )
        int a=65;
        System.out.println((char)a);//数字转换字符

        //转义字符
       // /t 制表符    /n 换行
        System.out.println("hello/world");
        System.out.println("-------------------分割线------------------------");
        //不明白

        String S1= new String("你好");//堆内存
        String S2= new String("你好");
        System.out.println(S1==S2);//false


        String S3="你好";//栈内存
        String S4="你好";
        System.out.println(S3==S4);//true
        //new出来的String在堆内存中,不new的在常量池,String重写了==方法,比较的是引用,常量池中两个相同的字符串是不会开辟新空间的,而堆内存会
        //上边不相等因为比较的是地址值   下边的向等因为比较的是常量

        System.out.println("-------------------分割线------------------------");
        //布尔值拓展
        boolean flag=true;
        if(flag==true){//无意义代码 新手写法
        System.out.println("新手");
        }
        if (flag){//老手写法
            System.out.println("老手");
            //less is More!更少的就是更多的
            //代码要精简易读
        }
    }


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值