Java mHeartBeatsPerMinute = (data[0] < 0) (128 + (128 + mHeartBeatsPerMinute)):(mHeartBeatsPerMinute);128 + (128 + mHeartBeatsPerMinute) 为什么要套一层括号?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/16 11:36:35
Java mHeartBeatsPerMinute = (data[0] < 0) (128 + (128 + mHeartBeatsPerMinute)):(mHeartBeatsPerMinute);128 + (128 + mHeartBeatsPerMinute) 为什么要套一层括号?

Java mHeartBeatsPerMinute = (data[0] < 0) (128 + (128 + mHeartBeatsPerMinute)):(mHeartBeatsPerMinute);128 + (128 + mHeartBeatsPerMinute) 为什么要套一层括号?
Java
mHeartBeatsPerMinute = (data[0] < 0) (128 + (128 + mHeartBeatsPerMinute))
:(mHeartBeatsPerMinute);
128 + (128 + mHeartBeatsPerMinute) 为什么要套一层括号?

Java mHeartBeatsPerMinute = (data[0] < 0) (128 + (128 + mHeartBeatsPerMinute)):(mHeartBeatsPerMinute);128 + (128 + mHeartBeatsPerMinute) 为什么要套一层括号?

首先理解下三目运算符,如下

boolean flag =true;
String str=flag?"是真的":"是假的";
System.out.println(str);//输出什么?当然是“是真的”,原理是我之前定义的布尔型的变量
                        //然后通过三目运算符来运算

然后就是128 + (128 + mHeartBeatsPerMinute),这句,你得看mHeartBeatsPerMinute是什么类型

如果是int(或者是数字类型的)那个括号就没意义了,如果是其他的类型(比如说 char等)就有说道啦,

当char类型+128,就好比ascii码在加128,最后你输出者个char类型的变量是输出的一个字符,而不是以个数字