【问题标题】:How to change Boolean array to double array如何将布尔数组更改为双数组
【发布时间】:2015-08-23 21:37:25
【问题描述】:

我有布尔数组,我想将它们更改为双数组。如果某个位置为真,则 double 为 1,否则设置等于​​ 0。我该怎么做?

我的布尔数组:

        Boolean [] a = new Boolean [10];
        int i = 2;
        for(int x = 1; x < 7; x=x+i){
            String name = "b" + String.valueOf(x);
            a [x] = shared.getBoolean(name, false);}

我的双数组:

double [] r = new double[10];

【问题讨论】:

    标签: android arrays loops boolean double


    【解决方案1】:

    我不知道你想用你当前的代码实现什么,但这里有一个例子:

    Boolean [] a = new Boolean[10];
    //fill the array a
    double [] r = new double[10];
    
    for(int x = 0; x < 10; x++){
        if(a[x]){
            r[x] = 1.0;
        }
        else{
            r[x] = 0.0;
        }
    }
    

    【讨论】:

      【解决方案2】:

      您可以使用 for 循环再次填充双数组:

          Boolean [] a = new Boolean [10];
          double [] r = new double[10];
          for(int i=0; i<a.length; i++) {
              if(a[i] != null && a[i])
                  r[i] = 1d;
              else
                  r[i] = 0d;
          }
      

      如您所见,我也在检查 Boolean a[i] != null 是否。 这是因为您使用的是数据类型 boolean 的 Wrapper-Class Boolean(大写 B)。在这种情况下,a[i] 可能为空!所以你应该在某个地方检查一下以避免异常。

      【讨论】:

        猜你喜欢
        • 2020-05-14
        • 2013-07-04
        • 1970-01-01
        • 2021-07-05
        • 1970-01-01
        • 2022-06-12
        • 2023-03-22
        • 2014-12-20
        • 1970-01-01
        相关资源
        最近更新 更多