2020-04-14
package Arrays联系;
import java.lang.reflect.Array;
import java.util.Arrays;
public class copytext
{
public static void main(String[] args) {
int a[]=new int[]{1,2,3,4,5};
// copyOfRange(int[] original, int from, int to)
// 第一个参数表示源数组
// 第二个参数表示开始位置(取得到)
// 第三个参数表示结束位置(取不到)
int[] b= Arrays.copyOfRange(a,0,5);
for (int i=0;i<b.length;i++)
{
System.out.println(b[i]);
}
}
}
该方法需要传递3个参数,分别为 复制数组、开始节点序号、结束节点序号 ;(数组已0开始,所以结束序号内容不会被复制)
package Arrays联系;
import java.lang.reflect.Array;
import java.util.Arrays;
public class copytext {
public static void main(String[] args) {
int a[] = new int[]{1, 2, 3, 4, 5};
String as=Arrays.toString(a);
System.out.println(as);
}
}
Arrays.toString方法,将数组转换为字符串,转换得到的内容是包括【】。
package Arrays联系;
import java.lang.reflect.Array;
import java.util.Arrays;
public class copytext {
public static void main(String[] args) {
int a[] = new int[]{78,24,105,33,99};
Arrays.sort(a);//方法调用
String as=Arrays.toString(a);
System.out.println(as);
}
}
sort()方法会将数组中的内容按从小到大进行排序;
需要注意的是, 使用binarySearch进行查找之前,必须使用sort进行排序
如果数组中有多个相同的元素,查找结果是不确定的
package Arrays联系;
import java.lang.reflect.Array;
import java.util.Arrays;
public class copytext {
public static void main(String[] args) {
int a[] = new int[]{78,24,105,33,99};
Arrays.sort(a);//方法调用
String as=Arrays.toString(a);
System.out.println(as);
System.out.println("99在数组中的序号为"+Arrays.binarySearch(a,99));
}
}
得到结果:
[24, 33, 78, 99, 105]
99在数组中的序号为3
Process finished with exit code 0
注: Arrays.binarySearch()得到的是搜索值的角标【小1】)
比较两个数组的内容是否一样
package Arrays联系;
import java.lang.reflect.Array;
import java.util.Arrays;
public class copytext {
public static void main(String[] args) {
char a[]=new char[]{'a','s','d','w'};
char b[]=new char[]{'a','s','d','w'};
System.out.println(Arrays.equals(a,b));
}
}
方法返回值为true或者false,无法精确定位到不同位置,需注意