每当我尝试获取随机用户时均会出现java.lang.IndexOutOfBoundsException错误

冷淡619

问题:我想将当前用户与从列表中随机选择的另一个用户进行匹配。但是,这是logcat给出的错误:

 java.lang.IndexOutOfBoundsException: Invalid index 18, size is 5

   at package.packagename.FindingOpponentActivity$1.done(FindingOpponentActivity.java:190)
   at package.packagename.FindingOpponentActivity$1.done(FindingOpponentActivity.java:78)

有关行,分别为190和78:

 while (rand > mUsers.size() && mUsers.get(rand).hasSameId(mCurrentUser)) {

   query.findInBackground(new FindCallback<ParseUser>() {

完整代码

 query.findInBackground(new FindCallback<ParseUser>() {
        @Override
        public void done(List<ParseUser> users, ParseException e) {
            setProgressBarIndeterminateVisibility(false);


            if (e == null) {
                //success!
              public  List<ParseUser> mUsers = users;


       // case if there is just one user 

    else if (mUsers.size() >= 2) {

      int rand = (int)(Math.random()*20);
                    while (rand > mUsers.size() && mUsers.get(rand).hasSameId(mCurrentUser)) {
                        rand = (int)(Math.random()*20);
                    }
                    mOpponentRelation.add(mUsers.get(rand));

                    mOpponent = mUsers.get(rand);
                    mCurrentUser.saveInBackground(new SaveCallback() {
                        @Override
                        public void done(ParseException e) {
                            if (e != null) {
                                Log.e(TAG, e.getMessage());
                            }
                        }
                    });

我尝试谷歌搜索“如何获得随机用户解析android”,但找不到任何有用的信息。

散列
else if (mUsers.size() >= 2) {
   Random random = new Random();
    int rand = random.nextInt(mUsers.size());
    while (mUsers.get(rand).hasSameId(mCurrentUser)) {
        rand = random.nextInt(mUsers.size());
    }
    mOpponentRelation.add(mUsers.get(rand));

    mOpponent = mUsers.get(rand);
    mCurrentUser.saveInBackground(new SaveCallback() {
        @Override
        public void done(ParseException e) {
            if (e != null) {
                Log.e(TAG, e.getMessage());
            }
        }
    });

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

java.lang.IndexOutOfBoundsException错误Bukkit插件

Android java.lang.IndexOutOfBoundsException 错误

为什么在尝试获取jsonArray项时会出现java.lang.IndexOutOfBoundsException?

得到这个错误java.lang.IndexOutOfBoundsException:索引487超出长度487

如何在这里修复java.lang.IndexOutOfBoundsException错误?

适配器的 onBindView 给出错误:java.lang.IndexOutOfBoundsException: Index: 0, Size: 0

Android java.lang.IndexOutOfBoundsException:无效的索引5,大小为5错误

如何修复此运行时错误:java.lang.IndexOutOfBoundsException

没有参考或无法找到参考的不确定性错误导致-java.lang.IndexOutOfBoundsException

每当我尝试添加时出现错误

每当我尝试在 PHP 中使用 mysqldump 时,都会出现错误。如何正确导入并使用它?

每当我尝试在 Dream Weaver 中打开某个文件时,它都会出现违规错误

事件java.lang.IndexOutOfBoundsException的断点

Android服务java.lang.IndexOutOfBoundsException

LastIndexOf和java.lang.IndexOutOfBoundsException

“线程1” java.lang.IndexOutOfBoundsException

java.lang.IndexOutOfBoundsException: 使用 try, catch

每当我单击添加按钮时,都会出现错误。(Java FX 场景构建器和 Eclipse)

尝试模拟App时出现Java.Lang.RunTimeException错误

当我连接SQL Server并检查表中的用户时,在线程“主” java.lang.NullPointerException中出现错误异常

每当我运行npm start时,都会出现错误。下图

每当我运行 MySQL 查询时,都会出现语法错误

从array.get获取java.lang.IndexOutOfBoundsException?

试图调用方法我得到 java.lang.IndexOutOfBoundsException

材料筹码:检查任何筹码时的 java.lang.IndexOutOfBoundsException

每当我尝试使用平面按钮显示底部弹出表时,都会出现错误“未实现的缺少静态目标的处理”

运行我的项目时出现java.lang.NoClassDefFoundError错误

java lang验证错误

Java.lang错误?