switch case报错case expressions must be constant expressions

本文详细介绍了在Android应用开发中,遇到的关于按钮点击事件的常量使用错误,并提供了正确的解决方案。通过案例分析,强调了在switch-case结构中使用常量的重要性,帮助开发者避免类似的低级错误。

开发中遇到如此低级问题,实在不该,不过遇到了还是记录一下,具体原因及解决参考该博文:http://blog.youkuaiyun.com/woshixuye/article/details/8349731 

一、发现问题

private int CLICK_QUERY = 1;
private int CLICK_RESET = 2;

@Override
public void onClick(View v)
{
int tag = (Integer) v.getTag();
switch (tag)
{
  case CLICK_QUERY:
   query();
  break;
  case CLICK_RESET:
   reset();
  break;
}
}
编译时一直报错:CLICK_QUERY 和CLICK_RESET——case expressions must be constant expressions

二、解决问题

case后面必须跟常量,必须要常量,将上面两个变量声明为final即可。

private final int CLICK_QUERY = 1;
private final int CLICK_RESET = 2;

转载于:https://my.oschina.net/reborn87/blog/494528

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值