杂记1、字符类型转换、==和.equals()


一.字符类型转换、

 字符类型转换分别有隐式转换和强制类型转换。

1.隐式转换,在类型表示范围大小从小到大的转换,是可以直接转换的。

        byte i=12;、
        int j=i;
        System.out.println("j = " + j);
        long a=j;
        System.out.println("a = " + a);
        double n=a;
        System.out.println("n = " + n);

2.强制转换,如果需要把表示范围大的字符类型转换为范围小的字符类型就需要用到强制转换、

       double c=129747l;
        int x=n;//转换失败, 类型从大到小,需要强制转换。
 int x=(int)c ;//强制转换将double类型转换为int类型、
        System.out.println("x = " + x);
        char t='赢';
        int k=(int) t;
        System.out.println("k = " + k);

在字符类型转换里容易马虎犯的错

        int java = 90;
        int html = 89;
        int sql = 60;
       double ageScroe = (java + html + sql) / 3;
       System.out.println("ageScroe = " + ageScroe);

这里我定义了一个double 类型的变量ageScroe求三个数的平均值,运行出的理想值应该是ageScroe = 79.66666666666667,但是输出的是ageScroe = 79.0,这里的原因是第四行代码等号右边是以int类型来计算的,计算出int类型的ageScroe再隐式转换为double类型的。解决方案应该是,

        double java = 90.0;
        double html = 89.0;
        double sql = 60.0;
        
        
        double ageScroe = (java + html + sql) / 3;
        System.out.println("ageScroe = " + ageScroe);

虽然是很简单的问题。

二、==与.equals()的区别。

1、==比较的是两个数值,比较的是值,比较引用类型时,比较的是物理地址。

2、.equals()用来比较两个字符串是否相等,比较的是值。

.equals 使用方式: 第一个字符串.equals(第二个字符串)
        String str1="java";
        String str2="java";
        System.out.println(str1==str2);//true
        String str3 =new String("java");
        System.out.println(str1==str3);//false
        System.out.println(str2.equals(str3));//true

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值