【发布时间】:2017-06-22 18:36:19
【问题描述】:
我想使用现有的数组元素作为 switch case,而不是为 switch case 提供常量字符串值
我在用于显示的资源字符串数组中有值,用户必须从这些显示值中进行选择,现在我想比较我保存在共享首选项中的输入值和我在数组资源中的值,我写了这样的东西,但是没有用
private static String activity;
private static int result;
activity = SharedPrefUtils.getActivityLevel(context);
String[] activities
= context.getResources().getStringArray(R.array.activity);
switch (activity){
//something like getting values from array
case activities[0]:
result = 0;
break;
case activities[1]:
result = 200;
break;
case activities[2]:
result = 300;
break;
}
return result;
【问题讨论】:
-
为什么是
static?删除它,它不会给你任何优势...... -
从 JDK7 开始,您可以执行 something like that,它只会使用 String.equals() 将其转换为 if/elseif 块。你用的是什么版本?
-
您的问题不清楚 - 您能否举一个该方法的输入和输出示例?
-
在我的情况下,我不想为 switch case 提供常量字符串,我想利用现有的数组来存储我想用作 switch case 的字符串值
标签: java android arrays switch-statement