学习笔记
一、复制数组的三种方式:
1.“=”,复制的数组会跟被复制的数组指向同一个地址,改变任意数组的值,另外一个数组的值也就被改变了。
int[] i1={1,2,3};
int[] i2=i1;
2.Arrays.copyOf(Object[] array,int length),该方法是Arrays类的静态方法,从源数组array的第一个元素开始复制长度为lenth的数据并返回复制之后的数组。如果length的长度大于源数组的长度,那么多出来的元素将被类型的默认初始化值代替。
int[] i1={1,2,3};
int[] i2=Arrays.copyOf(i1,i1.length+1);
那么i2的结果为{1,2,3,0}
3.System.arrayCopy(Object[] from ,int frompos,Object[] to,int topos,int length);该方法是System类的静态方法,当复制的内容超出目标数组的长度的时候会报数组越界异常。
二、因为java中只有值传递,所以通过包装类改变数值参数的方法是不可行的,这时可以使用org.omg.CORBA中定义的holder来实现,如下:
public static void(IntHolder x){
x.value=x.value*3;
}
这样就可以实现将x.value增加三倍。
三、mybits判断语句对于数字类型0的处理,需要特殊注意
在mybatis查询时。遇到这种如果传进来的的status值为0 ,直接跳出if不执行,
问题在于参数类型只能作用于string,int 、double、float等类型的参数默认值为0 ,将直接跳出if,
删掉后面的空字符串判断即可

浙公网安备 33010602011771号