从strings.xml的随机数组中获取随机字符串

时间:2018-12-27 11:50:37

标签: java android arrays string

我已经为这个问题苦苦挣扎了一周,找不到任何解决方案。希望有人能帮忙。我在strings.xml中有一组字符串数组。这是一个语言应用程序,每个级别有10个单词。在“培训”中,我想从各个级别获得单词并将它们随机混合。每个级别都是基于string.xml的onw字符串数组。由于我想从多个随机级别中获取10个单词,因此必须从随机字符串数组中选择随机字符串。

int i = 0;
List<String> myWords;
String [] arrayListTraining;

//我在mainactivity中声明了这些。 //以下内容放在onCreate内

while (i < 10) {

            int randomLevel = randXev.nextInt(numbeerOfLevels);
            String rutaStringsResposta = "Level" + randomLevel;
            int idRespsotes = getApplicationContext().getResources().getIdentifier(rutaStringsResposta, "array", getApplicationContext().getPackageName());
            arrayListTraining = getApplicationContext().getResources().getStringArray(idRespsotes);
            String randomStr = arrayListTraining[new Random().nextInt(arrayListTraining.length)];
            myWords.add(randomStr);
            i++;
        }

代码运行良好,但是一旦我向myWords(列表)添加内容,应用就会崩溃。 arrayListTraining是一个字符串[],但我也曾尝试作为列表,但没有成功。

非常感谢您!

由于我的仿真器无法正常工作,并且我使用的是USB设备,因此这是我可以找到的唯一错误日志,但是我认为这并不相关:

12-27 14:31:46.704 6875-6875 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_dependencies_apk.apk@classes.dex:权限被拒绝 12-27 14:31:46.931 6881-6881 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_0_apk.apk@classes.dex:权限被拒绝 12-27 14:31:46.994 6886-6886 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_1_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.056 6890-6890 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_2_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.142 6894-6894 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_3_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.206 6898-6898 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_4_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.269 6902-6902 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_5_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.331 6906-6906 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_6_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.369 3165-3486 /? E / WifiConfigStore:updateConfiguration freq = 2412 BSSID = 88:03:55:9e:65:bd RSSI = -46“ Orange-65BB” WPA_PSK 12-27 14:31:47.395 6910-6910 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_7_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.468 6914-6914 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_8_apk.apk@classes.dex:权限被拒绝 12-27 14:31:47.530 6918-6918 /? E / dex2oat:无法创建燕麦文件:/data/dalvik-cache/arm64/data@app@com.example.root.exercicis-1@split_lib_slice_9_apk.apk@classes.dex:权限被拒绝

0 个答案:

没有答案