android中对一个集合中的数据进行乱序排列的一些方法

原创 2015年11月17日 16:13:18

在android 开发中我们有时候需要让一个进行中原本有序排列的数据进行乱序排列,最近的自己做的项目中遇到了这种需要,所以把方法记录下来。

第一种方法:我们可以利用Collections.sort()方法:

 ArrayList<T> mList = new ArrayList<T>();

//////////

对mList进行初始化

/////////////////////

进行乱序操作

    Collections.sort(mList, new Comparator<T>() {
@Override
public int compare(T a, T b) {


return Math.random() > 0.5 ? 1 : -1;
}
});


////////////////////////////////////

第二种方法

for (int i =mList.size()  - 1; i >= 0; i--) {
int index = random.nextInt(i + 1);
T  buf = mList.get(index);
mList.get(index) = mList.get(i);

                      mList.get(i) = buf;

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

在一个文件中有10G个整数,乱序排列,要求找出中位数

题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 ...

在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。 -- Shirley对比编程珠玑 in<Shirley>

http://www.cppblog.com/richbirdandy/archive/2008/09/26/61426.html  题目和基本思路都来源网上,本人加以整理。 题目:在...

在一个文件中有10G个整数,乱序排列,要求找出中位数

题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 ...

将一数组乱序排列的三种方法

游戏中遇到这样的问题,需要将一组已知的数据打乱,按照以前和现在的做法,总结了以下方法。 方法一,最笨的菜鸟方法,也是容易想到的(幸好我没想过这种方法 :)) 从已知数组中随机一个数,然后加入到另一...

Android蓝牙通信——安卓蓝牙obtainMessage数据传输部分数据丢失乱序问题

根据google的demo写的蓝牙通信程序,在接收蓝牙的信息时,发现收到的数据有部分丢失和乱序。 在电脑上串口上查看蓝牙模块数据传输结果正常, 但是当利用蓝牙传数据的时候,上位机端(安卓手机客户端...

利用集合的静态方法Collections.shuffle() 乱序集合中的元素,实现自动理牌

import java.util.*; public class Card { public static enum Face{红心, 方块, 草花, 黑桃}; public static e...

长度为n的数组乱序存放着0至n-1. 现在只能进行0与其他数的交换.将数组中的元素按对应位置放置使得a[i]=i

长度为n的数组乱序存放着0至n-1. 现在只能进行0与其他数的交换.将数组中的元素按对应位置放置使得a[i]=i; 此题目中的数据很像一个哈希表,但是只能用和0交换的方式进行位置调整。目前只知道算法复...

长度为n的数组乱序存放着0至n-1. 现在只能进行0与其他数的交换.将数组中的元素按对应位置放置使得a[i]=i

原文链接:http://blog.csdn.net/u014659656/article/details/45115573 Question:长度为n的数组乱序存放着0至n-1. 现在只能进行0与...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)