我希望我的代码能够创建一个ArrayList(uniquePinyinArrayList),其中包含从现有ArrayList(pinyinArrayList)中筛选出的唯一项,该列表包含重复项。
“println”命令不会执行(我认为当在uniquePinyinArrayList中找到来自pinyinArrayList的重复项时,它们应该执行)。
我也尝试过。
“println”命令不会执行(我认为当在uniquePinyinArrayList中找到来自pinyinArrayList的重复项时,它们应该执行)。
fun uniquePinyinArray(pinyinArrayList: ArrayList<String>) {
val uniquePinyinArrayList = ArrayList<String>()
for(currentPinyin in pinyinArrayList){
if (currentPinyin in uniquePinyinArrayList){
// do nothing
println("already contained"+currentPinyin)
println("uniquePinyin"+uniquePinyinArrayList)
}
else {
uniquePinyinArrayList.add(currentPinyin)
}
}
}
我也尝试过。
if (uniquePinyinArrayList.contains(currentPinyin)){
尽管如此,这种方法也没有起作用。
编辑: 实际上,该方法会针对源单词列表中的每个单词运行,并因此创建多个ArrayList。为了解决这个问题,我在此循环之外创建了一个唯一拼音的单一ArrayList对象。现在一切都按预期工作了!