简体   繁体   中英

Storing binary bits into an integer array?

Currently, I just have data store the length of the bits, which isn't what I'm looking for.I would like to store the bits generated by the BinaryNumber constructor into the attribute private int data[] . data would later be used for other methods (for retrieving bit length,conversion to decimal, etc.). I am pretty new to Java programming, so I would very much appreciate if you can help me with this problem that I am facing.

public class BinaryNumber {

    private int data[]; 
    private boolean overflow; 



    /**
     * Creates a binary number of length length 
     * and consisting only of zeros.
     * 
     * @param Length
     * 
     **/

    public BinaryNumber(int length){
        String binaryNum=" "; 
        for (int i=0; i<length;i++) {
            binaryNum += "0";

        }
        System.out.println(binaryNum);
        data= new int[length];
    }



public static void main (String[] args) { 
        BinaryNumber t1=new BinaryNumber(7);

        System.out.println(t1);
    }

For example, the test above should generate seven 0s (0000000) and I would like to store those seven bits into the array data instead of what I do in my current code, which is storing it into a String binaryNum .

public BinaryNumber(int length) {
    data = new int[length];
    for (int i = 0; i < length; i++) {
        data[i] = 0;
    }
}

The Java spec, however, guarantees that all int values are initialized with 0, so your constructor could be simplified to just:

public BinaryNumber(int length) {
    data = new int[length];
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM