试图随机生成从000到110的二进制数

wil*_*ara 0 java random binary

我的代码随机生成一个从000到111的二进制数,但是我很难创建一个从000到110的数字.我知道我可以以某种方式重新运行它出现的所有代码111但我似乎无法弄清楚如何做到这一点.

public String binNumber() {
        StringBuilder storage = new StringBuilder();
        int i = 0;
        while (i < 3) {
            int binny = this.giveMeBinary();
            storage.append(String.valueOf(binny));

            i++;
        }


        return storage.toString();
    }

public int giveMeBinary() {
        Random rg = new Random();
        int bin = rg.nextInt(2);
        return bin;

    }
Run Code Online (Sandbox Code Playgroud)

Ada*_*cin 8

更好的方法是生成0到6(包括0和6)的随机数,然后转换为字符串

public String binNumber() {
    Random rg = new Random();
    int n = rg.nextInt(7);
    return Integer.toBinaryString(n);
}
Run Code Online (Sandbox Code Playgroud)