(javaSE)经验分享

1、switch(){}结构中,括号中可使用的数据类型不能是( )。
A.long
B.int
C.short
D.float

switch的括号内只能是以下类型的表达式:
基本类型:byte、char、short、int,注意不能是long类型
引用类型:String常量串、枚举类型
所以选A和D

2、看下面这样一段程序

 public static void main(String[] args) {
        long b = 10;
        int a = 10;
        a = a - b;
        System.out.println(a);
    }

这样的程序在java中是不允许的,因为后面a-b会进行类型提升,整体提升成long类型,而long类型的值是不能赋值给int类型的变量,要进行类型转换,idea会提醒你进行类型转换,
在这里插入图片描述
改成下面这两种写法就可以了,实际上下面的两种写法是等价的,在这个例子中,a = (int) (a - b);就等价于a -= b;编译器会进行自动转换。

public static void main(String[] args) {
        long b = 10;
        int a = 10;
        a = (int) (a - b);
        System.out.println(a);
    }
public static void main(String[] args) {
        long b = 10;
        int a = 10;
        a -= b;
        System.out.println(a);
    }

3、java里只有无符号右移 >>>、左移 <<和右移 >>这三种移位运算符。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有效的放假者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值