Java中的数组创建和C、C++一样,必须初始化以后才可以被使用,而此时数组就已被给定一定大小的空间了。当有些时候Vector和ArrayList用不上时,也只能用数组时,你会遇到:
在一些时候,你想输出一个数组中已被赋值的元素,而未被赋值的元素(比如那些0)你并不想输出。
在关于输出素数的方法中,有一种设置开关的方法,即先初始化一个变量tag=0,当满足素数时tag=1,再用if判断tag的值选择性输出即可。
在数组上也可以。
Javacodes:
int tag = 0; //默认数组输出的开关为关
long list[] = new long[10]; //创建一个数组
... //赋值给数组的代码省略,看作数组并未填满即可
for(i=list.length-1;i >= 0;i--){ //数组用for循环输出,此处为逆向输出
if(list[i] == 0){
//当数组中一直读取到是未赋值的0值时,开关tag将一直处于关的状态
}
else if(list[i] != 0){
tag = 1; //只要一读取到数组有赋值的元素,开关将一直打开
//,此后数组中被赋了0的值也能正常输出
}
if(tag == 1){ // 开关打开后便进行输出
System.out.print(list[i]);
}
即对于list[10] = {0,0,0,0,0,0,1,9,0,1}这样的数组,能实现输出为1901,而不是0000001901或者191。