【问题标题】:Search for number in array, Android在数组中搜索数字,Android
【发布时间】:2014-11-23 20:30:33
【问题描述】:

我正在我的应用程序中搜索数字,但它不起作用,请问问题出在哪里?! numrat 是 int[] 并且 fint 是来自 fytyratint[] 的数字...

        int fint = fytyratint[nrRendor];
        int nse = Arrays.binarySearch(numrat, fint);


            if (nse <0 ){
                pS++;
                tvS.setText("Sakt: "+ Integer.toString(pS));
            }
            else
            {
                pG++;
                tvG.setText("Gabimet: " + Integer.toString(pG));
            }       

因此,如果 int[] numrat 中不存在 number,则 nse 必须为负;如果 int[] numrat 中存在 fint,则 nse 必须为正。 这是我在网上看到的。。 但在我的例子中它总是消极的.. ??!!

【问题讨论】:

    标签: android arrays search numbers


    【解决方案1】:

    如果你想让Arrays.binarySearch() 工作,你应该对你的数组进行排序,就像写的here

    binarySearch() ... 对升序排列数组中的值执行二分查找 大批。 在未排序的数组中搜索会得到未定义的结果。它是 如果有多个,也未定义找到哪个元素 相同元素的出现次数。


    你可以这样做:

    Arrays.sort(numrat);
    Arrays.binarySearch(numrat, fint);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-01
      • 1970-01-01
      • 2016-03-08
      • 2022-11-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      相关资源
      最近更新 更多