目前,我只有data
存储位的长度,这不是我想要的。我想将BinaryNumber
构造函数生成的位存储到属性中private int data[]
。 data
稍后将用于其他方法(用于检索位长,转换为十进制等)。我是Java编程的新手,所以如果你能帮助我解决我面临的这个问题,我将非常感激。
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);
}
例如,上面的测试应生成七个0(0000000)并且我想将这七个位存储到数组data
中,而不是我在当前代码中执行的操作,它将其存储到字符串中binaryNum
。
答案 0 :(得分:2)
public BinaryNumber(int length) {
data = new int[length];
for (int i = 0; i < length; i++) {
data[i] = 0;
}
}
但是,Java规范保证所有int
值都用0初始化,因此您的构造函数可以简化为:
public BinaryNumber(int length) {
data = new int[length];
}