gpt4 book ai didi

java - 在 Java 中洗牌 JSON 数组的有效方法?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:36:02 25 4
gpt4 key购买 nike

哪种方法最好?现在,我将我的 JSONArray 转换为自定义类的 ArrayList,使用 Collections.shuffle() 执行操作,然后转换回来到 JSONArray,这似乎开销太大了。

答案可能只是实现一个 Fisher-Yates shuffle为此,但我的猜测是这可能已经完成,所以我想避免重新发明轮子。我看了标准 JSON apiGoogle's Gson但他们似乎没有任何实现。

标准数组也有简单的选项in this question可以很容易地移植到 java,但我很乐意听取您的意见。我很惊讶查询 http://www.google.com/search?q=java+shuffle+jsonarray没有用方法淹没我。

最佳答案

很抱歉发布了我自己的问题的答案,但现在,由于没有开箱即用的快速解决方案,我正在根据这篇文章中的代码实现我自己的静态随机播放功能:Random shuffling of an array。仍然期待听到最佳实现方案。这就是我所做的:

public static JSONArray shuffleJsonArray (JSONArray array) throws JSONException {
// Implementing Fisher–Yates shuffle
Random rnd = new Random();
for (int i = array.length() - 1; i >= 0; i--)
{
int j = rnd.nextInt(i + 1);
// Simple swap
Object object = array.get(j);
array.put(j, array.get(i));
array.put(i, object);
}
return array;
}

关于java - 在 Java 中洗牌 JSON 数组的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5531130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com