Int,R.array.name无效

时间:2014-07-30 02:41:45

标签: java android

我需要访问随机字符串数组。问题是这给了我一个例外。 "无效的int。"

    wordArray = getResources().getStringArray(Integer.valueOf("R.array" + array[new Random().nextInt(array.length)]));

还有其他办法吗?我似乎无法找到一个。请帮我。提前谢谢。

1 个答案:

答案 0 :(得分:0)

将数组放入ArrayList,然后使用Random选择数组中的一个值。使用" R"选择随机值文件不是一个好主意 - 您的数组可能不是数字顺序。资源文件不会始终按照您编写的代码直观或可靠的顺序生成。

初始化数组的伪代码:

ArrayList<String[]> randomArray = new ArrayList<String[]>();
int arrayCount = 0;
randomArray.add(getResources().getStringArray(R.array.Array1));
// continue adding arrays

然后使用随机整数从randomArray根据其长度选择一个数组。因为你正在使用&#34; res&#34; StringArrays,你不能有无限数量的数组,否则你的问题会更复杂。