Java基础(二)

1、常见的变量自增 i++与++i

public class Demo {
    public static void main(String[] args) {
        Demo.getValue(2);
    }
    public static void getValue(int n){
        n=n++;
        //这里n先进行了赋值,赋给了n,所以n=2,虽然进行了自增但是没有赋值
        int m=n++;
        //这里n先进行了赋值,赋给了m,所以m=2,然后进行了自增 m=2,n=3
        int q= n+ n++*++n;
        //q=3+3*5 n=5
        System.out.println("n="+n);
        System.out.println("m="+m);
        System.out.println("q="+q);
    }
}

运行结果:

n=5
m=2
q=18
public class Demo {
    public static void main(String[] args) {
        Demo.getValue(2);
    }
    public static void getValue(int n){
        n=n++;
        //这里n先进行了赋值,赋给了n,所以n=2,虽然进行了自增但是没有赋值
        int m=n++;
        //这里n先进行了赋值,赋给了m,所以m=2,然后进行了自增 m=2,n=3
        int q= n+ ++n*n++;
        //q=3+4*4 n=5
        System.out.println("n="+n);
        System.out.println("m="+m);
        System.out.println("q="+q);
    }
}

运行结果:

n=5
m=2
q=19

2、Math类中提供了三个与取值相关的方法
ceil、floor、round
ceil:英文意思是“天花板”,向上取整,Math.ceil(11.3)=12,Math.ceil(-11.3)=-11;
floor:英文意思是“地板”,向下取整,Math.floor(11.8)=11,Math.floor(-11.8)=-12;
round:四舍五入,算法为Math.round(x)=Math.floor(x+0.5),Math.round(11.5)=12,Math.ceil(-11.5)=-11;

3、equals常见的空指针错误
假设我们现在有一个类,例如String,对于如下代码:

String str = null;
if (str.equals("Hello World!")){
    System.out.println("Yes");
}else {
    System.out.println("No");
}

就会抛出空指针异常,但是,如果我们把第二行的条件判断改为:

if ("Hello World!".equals(str))

就不会抛出空指针异常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值