zoukankan      html  css  js  c++  java
  • Java从入门到实战之(22)数组之练习

    1、数组排序及元素查找

    如何使用sort()方法对Java数组进行排序,及如何使用 binarySearch() 方法来查找数组中的元素

    package Java_Learn.File;
    
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };
            sortFind(array,2);
        }
        public static void sortFind(int arr[],int pos)
        {
            Arrays.sort(arr);
            printArray("数组排序结果为",arr);
            System.out.println("元素"+pos+"在第"+Arrays.binarySearch(arr,pos)+"个位置");
        }
        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();
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=52509:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    数组排序结果为: [length: 10]
    -9, -7, -3, -2, 0, 2, 4, 5, 6, 8
    元素2在第5个位置
    
    Process finished with exit code 0

    2、数组添加元素

    如何使用sort()方法对Java数组进行排序,及如何使用 insertElement () 方法向数组插入元素

    package Java_Learn.File;
    
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };
            int pos=Arrays.binarySearch(array,1);
            int npos=-pos-1;
            int ele=1;
            array=insertElement(array,ele,npos);
            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 ori[],int ele,int pos)
        {
            int len=ori.length;
            int des[] =new int[len+1];
            System.arraycopy(ori,0,des,0,pos);
            des[pos]=ele;
            System.arraycopy(ori,pos,des,pos+1,len-pos);
            return des;
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=52697:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    数组添加元素1: [length: 11]
    2, 5, -2, 6, -3, 8, 0, -7, -9, 1, 4
    
    Process finished with exit code 0

    3、数组长度

    获取数组长度

    package Java_Learn.File;
    
    import java.util.Arrays;
    
    public class Main {
        public static void main(String args[]) throws Exception {
           String arr[][][]=new String[10][20][30];
            System.out.println(getLength(arr));
        }
        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 String getLength(String arr[][][])
        {
            return "第一维数组长度:"+arr.length+",第二维数组长度:"+arr[0].length;
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=53538:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    第一维数组长度:10,第二维数组长度:20
    
    Process finished with exit code 0

    4、数组反转

    使用 Collections.reverse(ArrayList) 将数组进行反转:

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            String arr[]={"a","b"};
            reversArr(arr);
        }
        private static void printArray(String message, Object[] 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 void reversArr(String arr[])
        {
            ArrayList<String> arrayList=new ArrayList<String>();
            arrayList.add("A");
            arrayList.add("B");
            arrayList.add("C");
            arrayList.add("D");
            arrayList.add("E");
            for (int i=0;i<arr.length;i++)
            {
                arrayList.add(arr[i]);
            }
            printArray("反转前排序:",arrayList.toArray());
            Collections.reverse(arrayList);
            printArray("反转后排序",arrayList.toArray());
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=53718:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    反转前排序:: [length: 7]
    A, B, C, D, E, a, b
    反转后排序: [length: 7]
    b, a, E, D, C, B, A
    
    Process finished with exit code 0

    5、数组获取最大和最小值

    如何通过 Collections 类的 Collections.max() 和 Collections.min() 方法来查找数组中的最大和最小值?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            Integer[] numbers = { 8, 2, 7, 1, 4, 9, 5};
            String msg1="最小值:";
            String msg2="最大值:";
            System.out.println(minAndMaxArr(numbers,msg1,msg2));
        }
        private static void printArray(String message, Object[] 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 String minAndMaxArr(Integer [] num,String msg1,String msg2)
        {
            int min=(int) Collections.min(Arrays.asList(num));
            int max=(int) Collections.max(Arrays.asList(num));
            return msg1+min+","+msg2+max;
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=55451:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    最小值:1,最大值:9
    
    Process finished with exit code 0

     6、数组合并

    如何通过 List 类的 Arrays.toString () 方法和 List 类的 list.Addall(array1.asList(array2) 方法将两个数组合并为一个数组?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            String a[] = { "A", "E", "I" };
            String b[] = { "O", "U" };
            combinArr(a,b);
        }
        private static void printArray(String message, Object[] 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 void combinArr(String a[],String b[])
        {
            List list=new ArrayList(Arrays.asList(a));
            list.addAll(Arrays.asList(b));
            printArray("合并后结果:",list.toArray());
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=55663:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    合并后结果:: [length: 5]
    A, E, I, O, U
    
    Process finished with exit code 0

    7、数组填充

    通过 Java Util 类的 Arrays.fill(arrayname,value) 方法和Arrays.fill(arrayname ,starting index ,ending index ,value) 方法向数组中填充元素?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            String b[] = { "O", "U" };
            fillArr(b);
        }
        private static void printArray(String message, Object[] 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 void fillArr(String b[])
        {
            String a[]=new String[10];
            for (int i=0;i<b.length;i++)
            {
                Arrays.fill(a,b[i]);
            }
            Arrays.fill(a,"200");
            printArray("填充后数组是:",a);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=57990:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    填充后数组是:: [length: 10]
    200, 200, 200, 200, 200, 200, 200, 200, 200, 200
    
    Process finished with exit code 0

    8、数组扩容

    如何在数组初始化后对数组进行扩容?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            addArr();
        }
        private static void printArray(String message, Object[] 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 void addArr()
        {
            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);
            printArray("扩容后的结果:",extended);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=58570:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    扩容后的结果:: [length: 5]
    A, B, C, D, E
    
    Process finished with exit code 0

    9、查找数组中的重复元素

    如何在 java 中找到重复的元素?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            int[] my_array = {1, 2, 5, 5, 6, 6, 7, 2, 9, 2};
            findDupicateInArray(my_array);
        }
        private static void printArray(String message, Object[] 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();
        }
        public static void findDupicateInArray(int[] a) {
            int count=0;
            for(int j=0;j<a.length;j++) {
                for(int k =j+1;k<a.length;k++) {
                    if(a[j]==a[k]) {
                        count++;
                    }
                }
                if(count==1)
                    System.out.println( "重复元素 : " +  a[j] );
                count = 0;
            }
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=58628:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    重复元素 : 5
    重复元素 : 6
    重复元素 : 2
    
    Process finished with exit code 0

    10、删除数组元素

    Java 的数组是固定长度的,无法直接删除,我们可以通过创建一个新数组,把原始数组中要保留的元素放到新数组中?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            int[] my_array = {1, 2, 5, 5, 6, 6, 7, 2, 9, 2};
            delEle(my_array,1);
        }
        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 void delEle(int [] oldArr,int n)
        {
            int[] newArr=new int[oldArr.length-1];
            for (int i=0;i<newArr.length;i++)
            {
                if(n<0 || n>oldArr.length)
                {
                    throw  new RuntimeException("元素越界。。。");
                }
                if(i<n)
                {
                    newArr[i]=oldArr[i];
                }
                else
                {
                    newArr[i]=oldArr[i+1];
                }
            }
            printArray("删除前数组:",oldArr);
            oldArr=newArr;
            printArray("删除第"+(n+1)+"个("+oldArr[n]+")元素后数组:",oldArr);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=59084:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    删除前数组:: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 9, 2
    删除第2个(5)元素后数组:: [length: 9]
    1, 5, 5, 6, 6, 7, 2, 9, 2
    
    Process finished with exit code 0

     11、数组差集

    如何使用 removeAll () 方法来计算两个数组的差集?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    public class Main {
        public static void main(String args[]) throws Exception {
            Integer[] a = {1, 2, 5, 5, 6, 6, 7, 2, 9, 2};
            Integer[] b = {1, 2, 5, 5, 6, 6, 7, 2, 11, 2};
            diffSet(a,b);
        }
        private static void printArray(String message, Object[] 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 void diffSet(Integer []a,Integer b[]) {
            ArrayList<Integer> arrayList= new <Integer>ArrayList();
            arrayList.addAll(Arrays.asList(a));
            ArrayList <Integer>arrayList1=new <Integer>ArrayList();
            arrayList1.addAll(Arrays.asList(b));
            printArray("array1 的元素:",arrayList.toArray());
            printArray("array2 的元素",arrayList1.toArray());
            arrayList.removeAll(arrayList1);
            System.out.println("array1 与 array2 数组差集为:"+arrayList);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=59700:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    array1 的元素:: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 9, 2
    array2 的元素: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 11, 2
    array1 与 array2 数组差集为:[9]
    
    Process finished with exit code 0

    12、数组交集

    如何使用 retainAll () 方法来计算两个数组的交集?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    public class Main {
        public static void main(String args[]) throws Exception {
            Integer[] a = {1, 2, 5, 5, 6, 6, 7, 2, 9, 2};
            Integer[] b = {1, 2, 5, 5, 6, 6, 7, 2, 11, 2};
            commSet(a,b);
        }
        private static void printArray(String message, Object[] 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 void commSet(Integer []a,Integer b[]) {
            ArrayList<Integer> arrayList= new <Integer>ArrayList();
            arrayList.addAll(Arrays.asList(a));
            ArrayList <Integer>arrayList1=new <Integer>ArrayList();
            arrayList1.addAll(Arrays.asList(b));
            printArray("array1 的元素:",arrayList.toArray());
            printArray("array2 的元素",arrayList1.toArray());
            arrayList.retainAll(arrayList1);
            System.out.println("array1 与 array2 数组差集为:"+arrayList);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=59749:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    array1 的元素:: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 9, 2
    array2 的元素: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 11, 2
    array1 与 array2 数组差集为:[1, 2, 5, 5, 6, 6, 7, 2, 2]
    
    Process finished with exit code 0

    13、在数组中查找指定元素

    如何使用 contains () 方法来查找数组中的指定元素?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    public class Main {
        public static void main(String args[]) throws Exception {
            Integer[] a = {1, 2, 5, 5, 6, 6, 7, 2, 9, 2};
            Integer[] b = {1, 2, 5, 5, 6, 6, 7, 2, 11, 2};
            containsSet(a,b);
        }
        private static void printArray(String message, Object[] 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 void containsSet(Integer []a,Integer b[]) {
            ArrayList<Integer> arrayList= new <Integer>ArrayList();
            arrayList.addAll(Arrays.asList(a));
            ArrayList <Integer>arrayList1=new <Integer>ArrayList();
            arrayList1.addAll(Arrays.asList(b));
            printArray("array1 的元素:",arrayList.toArray());
            printArray("array2 的元素",arrayList1.toArray());
            boolean b1=arrayList.contains(arrayList1.get(1));
            if(b1==true)
            {
                System.out.println("array1包含array1的"+arrayList1.get(1)+"元素");
            }
            else
            {
                System.out.println("没有包含");
            }
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=59861:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    array1 的元素:: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 9, 2
    array2 的元素: [length: 10]
    1, 2, 5, 5, 6, 6, 7, 2, 11, 2
    array1包含array1的2元素
    
    Process finished with exit code 0

     14、判断数组是否相等

    如何使用 equals ()方法来判断数组是否相等?

    package Java_Learn.File;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    public class Main {
        public static void main(String args[]) throws Exception {
            int[] ary = {1,2,3,4,5,6};
            int[] ary1 = {1,2,3,4,5,6};
            int[] ary2 = {1,2,3,4};
            equalArr(ary,ary1);
            equalArr(ary,ary2);
        }
        private static void printArray(String message, Object[] 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();
        }
        public static String arrShow(int [] arry){
            String mun="[";
            for(int i=0;i<arry.length;i++){
                if(i==arry.length-1){
                    mun=mun+arry[i]+"]";
                }else{
                    mun=mun+arry[i]+",";
                }
            }
            return mun;
        }
        private  static void equalArr(int []a,int b[])
        {
            System.out.print("数组");
            System.out.print(arrShow(a));
            System.out.print("与数组");
            System.out.print(arrShow(b));
            System.out.println("是否相等?");
            boolean flag=Arrays.equals(a,b);
            if (flag==true)
            {
                System.out.println("相等");
            }
            else
            {
                System.out.println("不相等");
            }
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=51956:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    数组[1,2,3,4,5,6]与数组[1,2,3,4,5,6]是否相等?
    相等
    数组[1,2,3,4,5,6]与数组[1,2,3,4]是否相等?
    不相等
    
    Process finished with exit code 0

    15、数组并集

    如何使用 unionArr()方法来计算两个数组的并集?

    package Java_Learn.File;
    
    import java.util.HashSet;
    import java.util.Set;
    
    public class Main {
        public static void main(String args[]) throws Exception {
            String[] arr1 = { "1", "2", "3" };
            String[] arr2 = { "4", "5", "6" };
            String[] result_union = unionArr(arr1, arr2);
            System.out.println("数组"+arrShow(arr1)+"与数组"+arrShow(arr2)+"的并集是:"+"
    "+arrShow(result_union));
        }
        private static void printArray(String message, Object[] 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();
        }
        public static String arrShow(String [] arr){
            String mun="[";
            for(int i=0;i<arr.length;i++){
                if(i==arr.length-1){
                    mun=mun+arr[i]+"]";
                }else{
                    mun=mun+arr[i]+",";
                }
            }
            return mun;
        }
        // 求两个字符串数组的并集,利用set的元素唯一性
        public static String[] unionArr(String[] arr1, String[] arr2) {
            Set<String> set = new HashSet<String>();
    
            for (String str : arr1) {
                set.add(str);
            }
    
            for (String str : arr2) {
                set.add(str);
            }
    
            String[] result = {  };
    
            return set.toArray(result);
        }
    }

    结果:

    "C:Program FilesJavajdk1.8.0_221injava.exe" "-javaagent:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3libidea_rt.jar=52065:C:Program FilesJetBrainsIntelliJ IDEA 2019.3.3in" -Dfile.encoding=UTF-8 -classpath "C:Program FilesJavajdk1.8.0_221jrelibcharsets.jar;C:Program FilesJavajdk1.8.0_221jrelibdeploy.jar;C:Program FilesJavajdk1.8.0_221jrelibextaccess-bridge-64.jar;C:Program FilesJavajdk1.8.0_221jrelibextcldrdata.jar;C:Program FilesJavajdk1.8.0_221jrelibextdnsns.jar;C:Program FilesJavajdk1.8.0_221jrelibextjaccess.jar;C:Program FilesJavajdk1.8.0_221jrelibextjfxrt.jar;C:Program FilesJavajdk1.8.0_221jrelibextlocaledata.jar;C:Program FilesJavajdk1.8.0_221jrelibext
    ashorn.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunec.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunjce_provider.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunmscapi.jar;C:Program FilesJavajdk1.8.0_221jrelibextsunpkcs11.jar;C:Program FilesJavajdk1.8.0_221jrelibextzipfs.jar;C:Program FilesJavajdk1.8.0_221jrelibjavaws.jar;C:Program FilesJavajdk1.8.0_221jrelibjce.jar;C:Program FilesJavajdk1.8.0_221jrelibjfr.jar;C:Program FilesJavajdk1.8.0_221jrelibjfxswt.jar;C:Program FilesJavajdk1.8.0_221jrelibjsse.jar;C:Program FilesJavajdk1.8.0_221jrelibmanagement-agent.jar;C:Program FilesJavajdk1.8.0_221jrelibplugin.jar;C:Program FilesJavajdk1.8.0_221jrelib
    esources.jar;C:Program FilesJavajdk1.8.0_221jrelib
    t.jar;C:appWorkSpace	argetclasses;C:Program Files (x86)scalalibscala-actors-2.11.0.jar;C:Program Files (x86)scalalibscala-actors-migration_2.11-1.1.0.jar;C:Program Files (x86)scalalibscala-library.jar;C:Program Files (x86)scalalibscala-parser-combinators_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-reflect.jar;C:Program Files (x86)scalalibscala-swing_2.11-1.0.1.jar;C:Program Files (x86)scalalibscala-xml_2.11-1.0.1.jar;C:
    epositoryorgscala-langscala-library2.11.0scala-library-2.11.0.jar" Java_Learn.File.Main
    数组[1,2,3]与数组[4,5,6]的并集是:
    [1,2,3,4,5,6]
    
    Process finished with exit code 0
    作者:大码王

    -------------------------------------------

    个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

    万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•?ω•?)っ???!

  • 相关阅读:
    Hibernate读书笔记Hibernate的关联映射之11关联映射
    Hibernate读书笔记Hibernate的关联映射之NN关联映射 .
    Hibernate读书笔记Hibernate的关联映射之N1关联映射
    Hibernate读书笔记继承映射
    String类型转换的三种方法分析
    使用using关键字对连接进行简化
    Hibernate读书笔记继承映射
    关于ORACLE的ora12505报错以及连接问题的解决及相关资料
    10天学会Web标准建站
    Oracle中大对象(lob)处理方法
  • 原文地址:https://www.cnblogs.com/huanghanyu/p/13862301.html
Copyright © 2011-2022 走看看