首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

一个格雷码有关问题,线程异常,

2013-12-05 
一个格雷码问题,线程错误,求助,急public class gray{public static void main(String args[]){StringBuffe

一个格雷码问题,线程错误,求助,急
public class gray{
public static void main(String args[]){
StringBuffer[] buffer = new  StringBuffer[256];
int tem = 0;
graynum(3,buffer,tem);
System.out.print(buffer);
}

static void graynum(int n,StringBuffer []a,int tem){
if(n==0){
a[0].append("0");
a[1].append("1");
tem=1;
}
for(n=(int)Math.pow(2, tem);n>0;n--){
if(n%2!=0)
{
a[n]=a[(n+1)/2].append("0");
}
else
a[n]=a[n/2].append("1");
}
++tem;

}
}
就是这个,线程是错误的,一晚上没改对,求助
[解决办法]
StringBuffer[] buffer = new  StringBuffer[256];
定义了一个数组,但是buffer[i]都是null,不能直接append使用,使用前可以buffer[i] = new StringBuffer()一下,或者每一个都初始化下。

热点排行