-1

添加两个数字时,我的 Android 程序的结果很奇怪。这是我用来找出发生了什么的测试代码:

private static final float yChannel[] = {12.0f, 8.0f, 4.0f, 0};

protected void onCreate(Bundle savedInstanceState) {
    Log.i("Rectangles","y1: " + yChannel[0]+2.0f);
    Log.i("Rectangles","y2: " + yChannel[0]);
}

LogCat 结果是:

y1: 12.02.0
y2: 12

我根本不明白所有变量都是浮动的。我的代码不起作用,因为它没有给出正确的结果。我还尝试清理 Eclipse 项目。

4

2 回答 2

5
"Rectangles","y1: " + yChannel[0]+2.0f

是字符串连接,因为第一个操作数是字符串。

试试这个

Log.i("Rectangles","y1: " + (yChannel[0]+2.0f));

或者

float temp = yChannel[0]+2.0f;
    Log.i("Rectangles","y1: " + temp);
于 2012-12-16T21:13:17.260 回答
1

您需要在浮点计算周围加上括号,因为参数在添加到字符串时会被转换为字符串

于 2012-12-16T21:14:58.253 回答