猿问

有一个问题

b1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
        Log.i("msg0", b+" ");
        if(b) {
            String text = b1.getText().toString();
            Log.i("msg", text);
        }
    }
});
b1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
        Log.i("msg0", b);
        if(b) {
            String text = b1.getText().toString();
            Log.i("msg", text);
        }
    }
});

上下有段代码有一处不同(第四行的b),为什么上面的可行,下面不可行。

totosspace
浏览 1834回答 3
3回答

一条小咸鱼

因为Log.i()方法的签名,需要两个String类型的参数。任何变量和常量用“+”与字符串连接都会被转化为字符串。(说的可能不太准确,大概是这样)
随时随地看视频慕课网APP

相关分类

Android
Java
我要回答