加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 测量数组之间的重叠

发布时间:2020-12-15 01:03:46 所属栏目:Java 来源:网络整理
导读:给定Java中的几个数组(我将循环通过当前存储在HashMap中的键),我希望能够识别(基于当前存储的boolean []键)哪些索引在所有索引中都是真的,哪些是假. 例: {true,true,false}{true,false,false} 将索引0作为具有所有真值,并将索引2作为具有所有假值. 我的一个

给定Java中的几个数组(我将循环通过当前存储在HashMap中的键),我希望能够识别(基于当前存储的boolean []键)哪些索引在所有索引中都是真的,哪些是假.

例:

{true,true,false}
{true,false,false}

将索引0作为具有所有真值,并将索引2作为具有所有假值.

我的一个想法是将布尔数组转换为整数数组,对值求和,如果求和数组索引= numArrays,则所有这些都是True.类似地,如果求和的数组索引为0,则它??们全部为假.

我不知道如何以有效的方式(在java中)这样做,如果这是一个很好的方法来实现我想要的结果.

有没有办法将布尔数组转换为整数?如果没有,是最简单的替代实例化一个新的int数组,并循环通过布尔数组来填充新数组?

最佳答案
假设所有数组都具有相同数量的元素,您可以尝试这样做:

public static void main(String[] args) {
    boolean[] array1 = new boolean[] {true,false};
    boolean[] array2 = new boolean[] {true,false};
    boolean[] array3 = new boolean[] {true,false};
    boolean[] array4 = new boolean[] {true,false};

    compareAndPrintCommonIndicesForArrays(array1,array2,array3);
}

public static boolean compareAndPrintCommonIndicesForArrays(boolean[] ...arrays) {
    boolean result =true;
    boolean itemToCompare;
    int elementsToCompare = arrays[0].length;

    for(int itemIndex=0; itemIndex

它打印:

0
?2

代码将遍历所有索引,并且对于每个索引,它将比较该索引处的所有数组中的元素.如果它们全部相同则打印索引.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读