有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java计算一个倒数二进制数开头的0的数量

作为练习,我必须将任何常规数转换为二进制数,然后还原二进制数。我这样做了,但现在我必须让程序在倒数二进制数的开头计算0的数量。我试图数完所有的0,但因为我只需要在第一个1之前数完0的数量,所以我卡住了。这就是我目前的情况:

import java.util.*;


class Main {
  public static void main(String[] args) {

    int woord = 20;
    
   String bin = Integer.toBinaryString(woord);
   String test = new StringBuilder(bin).reverse().toString();
  
    System.out.println(test);
    
  }
}

如何计算倒数二进制数开头的0


共 (1) 个答案

  1. # 1 楼答案

    只需对“1”进行拆分,并返回第一个元素的长度

    import java.util.*;
    
    class Main {
      public static void main(String[] args) {
    
        int woord = 20;
    
       String bin = Integer.toBinaryString(woord);
       String test = new StringBuilder(bin).reverse().toString();
    
        System.out.println(test);
        String[] parsed = test.split("1");
        System.out.println(parsed.length > 0 ? parsed[0].length() : "0");
      }
    }