诸位大神,谁帮小弟分析下一行代码。。。

加盾男爵 2018-09-07 03:01:14

Object obj = OpenTxtView.getTag();
req.ActionID = obj == null || (int) obj == 1 ? 0 : 1; //这行到底是什么意思?

因为公司元来安卓开发人员删库跑路,我一个完全不会java/安卓开发的人被拉壮丁,要求接受这个安卓开发项目,前阵子恶补了java和安卓开发,现在开始看前同事的遗作。。
然后遇到这行代码,req.ActionID是一个类的公有成员,是个int, OpenTxtView是个TextView的ID,但下面一句到底什么意思?
||后面三元运算符,要么是1,要么是0,假设程序运行时为1,那这句就是
req.ActionID = obj == null || 1; 

我查了一下,java运算符优先级里,代码里几个运算符最低的就是||,但这句代码又不是个表达式,这句代码到底该怎么理解?
...全文
134 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jklwan 2018-09-07
  • 打赏
  • 举报
回复
如果obj等于null 或者obj 等于1则返回0,否则返回1; ||或运算符的优先级大于三元运算符 ?:
r00_a2lBUR 2018-09-07
  • 打赏
  • 举报
回复
做个Demo试一下结果

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧