1. 程式人生 > >java中使用switch case報錯case expressions must be constant expressions

java中使用switch case報錯case expressions must be constant expressions

一、發現問題

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;