java实例数组_Java实例-数组

1、Java 实例 – 数组排序及元素查找:使用sort()方法对Java数组进行排序,使用 binarySearch() 方法来查找数组中的元素

public class Array_SortLookup {

public Array_SortLookup(){

int array[] = {2,5, -2,6, -3,8,0, -7, -9,4 };

Arrays.sort(array);

printArray("数组排序结果为", array);

int index = Arrays.binarySearch(array,2);

System.out.println("元素 2  在第 " + index +" 个位置");

}

private static void printArray(String message,int array[]) {

System.out.println(message

+": [length: " + array.length +"]");

for (int i =0; i < array.length; i++) {

if(i !=0){

System.out.print(", ");

}

System.out.print(array[i]);

}

System.out.println();

}

}

输出结果:

9614f9ea296a

2、Java 实例 – 数组添加元素:使用sort()方法对Java数组进行排序,及如何使用 insertElement () 方法向数组插入元素。

public class Array_SortAdd {

public Array_SortAdd(){

int array[] = {2,5, -2,6, -3,8,0, -7, -9,4 };

Arrays.sort(array);

printArray("数组排序", array);

int index = Arrays.binarySearch(array,1);

System.out.println("元素 1 所在位置(负数为不存在):"

+ index);

int newIndex = -index -1;

array =insertElement(array,1, newIndex);

printArray("数组添加元素 1", array);

}

private static void printArray(String message,int array[]) {

System.out.println(message

+": [length: " + array.length +"]");

for (int i =0; i < array.length; i++) {

if (i !=0){

System.out.print(", ");

}

System.out.print(array[i]);

}

System.out.println();

}

private static int[] insertElement(int original[],

int element,int index) {

int length = original.length;

int destination[] =new int[length +1];

System.arraycopy(original,0, destination,0, index);

destination[index] = element;

System.arraycopy(original, index, destination, index

+1, length - index);

return destination;

}

}

输出结果:

9614f9ea296a

3、Java 实例 – 获取数组长度:使用数组的属性 length 来获取数组的长度。

public class Array_Length {

public Array_Length(){

String[][] data =new String[2][5];

System.out.println("第一维数组(垂直)长度: " + data.length);

System.out.println("第二维数组(水平)长度: " + data[0].length);

}

}

输出结果:

9614f9ea296a

4、Java 实例 – 数组反转:使用 Collections.reverse(ArrayList) 将数组进行反转。

public class Array_Reverse {

public Array_Reverse(){

ArrayList arrayList =new ArrayList();

arrayList.add("A");

arrayList.add("B");

arrayList.add("C");

arrayList.add("D");

arrayList.add("E");

System.out.println("原数组排序: " + arrayList);

Collections.reverse(arrayList);

System.out.println("反转后排序: " + arrayList);

}

}

输出结果:

9614f9ea296a

5、Java 实例 – 数组输出:

public class Array_Print {

public Array_Print(){

String[] arr =new String[3];

arr[0] ="功能1";

arr[1] ="功能2";

arr[2] ="功能3";

for (int i =0; i < arr.length; i++){

System.out.println(arr[i]);

}

}

public Array_Print(String []arr){

for (int i =0; i < arr.length; i++){

System.out.print(arr[i]+"    ");

}

}

}

输出结果:

9614f9ea296a

6、Java 实例 – 数组获取最大和最小值:通过 Collections 类的 Collections.max() 和 Collections.min() 方法来查找数组中的最大和最小值。

public class Array_MaxMin {

public Array_MaxMin(){

Integer[] numbers = {8,2,7,1,4,9,5};

int min = (int) Collections.min(Arrays.asList(numbers));

int max = (int) Collections.max(Arrays.asList(numbers));

System.out.println("最小值: " + min);

System.out.println("最大值: " + max);

}

}

输出结果:

9614f9ea296a

7、Java 实例 – 数组合并:通过 List 类的 Arrays.toString () 方法和 List 类的 list.Addall(array1.asList(array2) 方法将两个数组合并为一个数组。

public class Array_Merge {

public Array_Merge(){

String a[] = {"A","E","I" };

String b[] = {"O","U" };

List list =new ArrayList(Arrays.asList(a));

list.addAll(Arrays.asList(b));

Object[] c = list.toArray();

System.out.print("数组1:");

new Array_Print(a);                     //实例5输出数组中带参数的构造方法

System.out.print("\n数组2:");

new Array_Print(b);

System.out.println("\n合并后的数组:"+Arrays.toString(c));

}

}

输出结果:

9614f9ea296a

8、Java 实例 – 数组填充:通过 Java Util 类的 Arrays.fill(arrayname,value) 方法和Arrays.fill(arrayname ,starting index ,ending index ,value) 方法向数组中填充元素。

public class Array_Fill {

public Array_Fill(){

int array[] =new int[6];

Arrays.fill(array,100);

System.out.println("将数组全部填充为值100的元素:");

for (int i=0, n=array.length; i < n; i++) {

System.out.print(array[i]+"  ");

}

System.out.println("\n将数组后3个元素填充为值50的元素:");

Arrays.fill(array,3,6,50);

for (int i=0, n=array.length; i< n; i++) {

System.out.print(array[i]+"  ");

}

}

}

输出结果:

9614f9ea296a

9、Java 实例 – 数组扩容:

public class Array_Extends {

public Array_Extends(){

String[] names =new String[] {"A","B","C" };

String[] extended =new String[5];

extended[3] ="D";

extended[4] ="E";

System.arraycopy(names,0, extended,0, names.length);

System.out.println("原数组:");

new Array_Print(names);//实例5输出数组中带参数的构造方法

System.out.println("\n扩容后数组:");

new Array_Print(extended);

}

}

输出结果:

9614f9ea296a

10、Java 实例 – 查找数组中的重复元素:

public class Array_CNKI {

public Array_CNKI(){

int[] my_array = {1,2,5,5,6,6,7,2,9,2};

findDupicateInArray(my_array);

}

public static void findDupicateInArray(int[] a) {

int count=0;

for(int j=0;j

for(int k =j+1;k

if(a[j]==a[k]) {

count++;

}

}

if(count==1)

System.out.println("重复元素 : " +  a[j] );

count =0;

}

}

}

输出结果:

9614f9ea296a

11、Java 实例 – 删除数组元素:使用 remove () 方法来删除数组元素

public class Array_Delete {

public Array_Delete(){

ArrayList objArray =new ArrayList();

objArray.clear();

objArray.add(0,"第 0 个元素");

objArray.add(1,"第 1 个元素");

objArray.add(2,"第 2 个元素");

System.out.println("数组删除元素前:"+objArray);

objArray.remove(1);//通过键值对,按键删除

objArray.remove("第 0 个元素");//通过键值对,按键值删除

System.out.println("数组删除元素后:"+objArray);

}

}

输出结果:

9614f9ea296a

12、Java 实例 – 数组差集:使用 removeAll () 方法来计算两个数组的差集。

public class Array_DefferenceSet {

public Array_DefferenceSet(){

ArrayList objArray =new ArrayList();

ArrayList objArray2 =new ArrayList();

objArray2.add(0,"common1");

objArray2.add(1,"common2");

objArray2.add(2,"notcommon");

objArray2.add(3,"notcommon1");

objArray.add(0,"common1");

objArray.add(1,"common2");

objArray.add(2,"notcommon2");

System.out.println("array1 的元素" +objArray);

System.out.println("array2 的元素" +objArray2);

objArray.removeAll(objArray2);

System.out.println("array1 与 array2 数组差集为:"+objArray);

}

}

输出结果:

9614f9ea296a

13、Java 实例 – 数组交集:

public class Array_Mixed {

public Array_Mixed(){

ArrayList objArray =new ArrayList();

ArrayList objArray2 =new ArrayList();

objArray2.add(0,"common1");

objArray2.add(1,"common2");

objArray2.add(2,"notcommon");

objArray2.add(3,"notcommon1");

objArray.add(0,"common1");

objArray.add(1,"common2");

objArray.add(2,"notcommon2");

System.out.println("array1 数组元素:"+objArray);

System.out.println("array2 数组元素:"+objArray2);

objArray.retainAll(objArray2);

System.out.println("array2 & array1 数组交集为:"+objArray);

}

}

输出结果:

9614f9ea296a

14、Java 实例 – 在数组中查找指定元素:使用 contains () 方法来查找数组中的指定元素。

public class Array_Find {

public Array_Find(){

ArrayList objArray =new ArrayList();

ArrayList objArray2 =new ArrayList();

objArray2.add(0,"common1");

objArray2.add(1,"common2");

objArray2.add(2,"notcommon");

objArray2.add(3,"notcommon1");

objArray.add(0,"common1");

objArray.add(1,"common2");

System.out.println("objArray 的数组元素:"+objArray);

System.out.println("objArray2 的数组元素:"+objArray2);

System.out.println("objArray 是否包含字符串common2? : "

+objArray.contains("common2"));

System.out.println("objArray2 是否包含数组 objArray? :"

+objArray2.contains(objArray) );

}

}

输出结果:

9614f9ea296a

15、Java 实例 – 判断数组是否相等:使用 equals ()方法来判断数组是否相等。

public class Array_Equal {

public Array_Equal(){

int[] ary = {1,2,3,4,5,6};

int[] ary1 = {1,2,3,4,5,6};

int[] ary2 = {1,2,3,4};

System.out.println("数组 ary 是否与数组 ary1相等? :"

+Arrays.equals(ary, ary1));

System.out.println("数组 ary 是否与数组 ary2相等? :"

+ Arrays.equals(ary, ary2));

}

}

输出结果:

9614f9ea296a

16、Java 实例 - 数组并集:使用 union ()方法来计算两个数组的并集。

public class Array_Union {

public Array_Union(){

String[] arr1 = {"1","2","3" };

String[] arr2 = {"4","5","6" };

String[] result_union =union(arr1, arr2);

System.out.println("数组1的元素有:");

new Array_Print(arr1);

System.out.println("\n数组2的元素有:");

new Array_Print(arr2);

System.out.println("\n并集的结果如下:");

for (String str : result_union) {

System.out.print(str+"  ");

}

}

// 求两个字符串数组的并集,利用set的元素唯一性

public static String[] union(String[] arr1, String[] arr2) {

Set set =new HashSet();

for (String str : arr1) {

set.add(str);

}

for (String str : arr2) {

set.add(str);

}

String[] result = {  };

return set.toArray(result);

}

}

输出结果:

9614f9ea296a

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值