如何使用Collections.shuffle在SSJS中随机播放ArrayList?

问题描述

我需要将ArrayList的内容混洗/随机化。我很高兴发现Collections.shuffle(),但与其他Java映射/列表/集合不同,它似乎无法为XPages ssjs代码提供Collections类。是否可以导入/引用Collections类以访问其shuffle()方法

这是我当前的代码

var numbersArrayList = new java.util.ArrayList;
for (i=1; i<=10; i++) {
    numbersArrayList.add(i)
}
dBar.dump(numbersArrayList);

Collections.shuffle(numbersArrayList);

dBar.dump(numbersArrayList);

这是指示找不到Collections类的错误

This file is encoded using UTF-8. Please set your editor/viewer options appropriately
10/29/20 6:22 AM: Exception Thrown
Context Path: /TravelTrackPaul2.nsf
Page Name: /resetData.xsp
Control id: button6
Property: onclick
Script interpreter error,line=8,col=13: [ReferenceError] 'Collections' not found
     6: 
     7: Collections.shuffle(numbersArrayList);
->   8: 
     9: dBar.dump(numbersArrayList);

解决方法

使用完整的包名称调用该方法:

java.util.Collections.shuffle(numbersArrayList);