SCJP310-055的一个数组索引题目

public static void certkiller(String str) {

    int check = 4;

    if(check = str.length()) {

        System.out.print(str.charAt(check -=1) + " ");

    } else {

        System.out.print(str.charAt(0) + " ");

    }

}

 

and the invocation:

certkiller("four");

certkiller("tee");

certkiller("to");

 

What is the result?

A. r, t, t

B. r, e, o

C. Compliation fails

D. An exception is thrown at runtime

 

Answer: C

 

我在这里出这个题不是说大家都做不来,而是想说考试的时候一定要注意审题,相信大家这个时候都知道是哪里错了。SCJP在考试中喜欢的就是考验大家是否仔细,稍稍留点儿意,就可以发现在if条件判断中使用了“=”号,而且这里的“=”号目的就是将右边的数赋值给左边的check,当然不行,条件判断的值只能是boolean型的或者Boolean封装类型。当然,如果check的定义是“boolean check” 或者“Boolean check”, 而且if条件判断式“check = true|false”,这样是可以的。还是要注意点就是如果是“check = false”, 将执行的是else中的语句。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值