java【四】之數組,創建,使用,排序

java【四】之數組,創建,使用,排序

書寫是對思維最好的緩存!

 

目錄

java【四】之數組,創建,使用,排序


  • 創建數組
  • 給數組元素賦值
  • 使用,修改數組的信息
  • 創建多維數組

java數組的定義有兩種方法
第一個:靜態
數據類型[] 變量名 = new 數據類型[]{數組的內容};這是靜態定義的標準寫法,也可以像這樣簡寫
數據類型[] 變量名 = {數組內容},下面來看看實際代碼
定義一個int類型的數組 array

int[] array = new int[]{1,2,3};
int[] array = {1,2,3};

 

第二個:動態
數據類型[] 變量名 = new 數據類型[數組長度],動態沒有元素,但是有默認值;這個默認值就是0以及0對應的數據類型的值,比如說對應的int類型那麼就是0,再比如char類型的,那麼就是對應的字符串,但是這個是打印不出來的;
定義一個String類型的數組 StringArray 數組長度是6
 

String[] StringArray = new String[6]

給數組元素賦值:

  • 對於不是 非常大的數組可以使用在創建數組時,指定初始值:

 

String[] mystr={"fh8esiu","ftyjg","etrjyn","tyfyh,xcvhb"}
int[] myintarray={1,8,6,2,6,4}
  • 對於很大的數組,可以使用for循環,加Scanner類 進行輸入大家如果不是很瞭解Scanner輸入可以看一下下面的文章:
  • Scanner輸入詳解
  •  下面是使用for循環的賦值操作:
  • mport java.util.Scanner;
    public class test{
        public static void main(String[] args){
            Scanner input=new Scanner(System.in);
            int[] array=new int[10];
            for(int i=0;i<10;i++)
                array[i]=input.nextInt();
            for(int i=0;i<10;i++)
                System.out.print(array[i]+" ");
        }
    }
    
    //    輸出:
    D:\eclipse\jdk\bin\java.exe -Didea.launcher.port=59006 "-Didea.launcher.bin.path=D:\java_idea\IntelliJ IDEA 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "D:\java_idea\out\production\java_idea_source;D:\java_idea\IntelliJ IDEA 2019.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMainV2 test
    1 7 8 7 8 1 4 5 6 3
    1 7 8 7 8 1 4 5 6 3 
    Process finished with exit code 0

     


使用,修改數組的信息:

  • 關於 使用數組其實與c++大致相同,可以使用下標[]  或者使用for循環遍歷數組,進行增刪之類的修改:
  • //    這是使用將一個字符串轉化爲字符數組其中使用了toCharArray()
    import java.util.Scanner;
    public class test{
        public static void main(String[] args){
            Scanner input=new Scanner(System.in);
            String mystr=input.nextLine();
            char[] array=mystr.toCharArray();
            for(int i=0;i<mystr.length();i++)
                System.out.print(array[i]+" ");
        }
    }
    
    //  輸出:
    D:\eclipse\jdk\bin\java.exe -Didea.launcher.port=59729 "-Didea.launcher.bin.path=D:\java_idea\IntelliJ IDEA 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "D:\java_idea\out\production\java_idea_source;D:\java_idea\IntelliJ IDEA 2019.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMainV2 test
    bh bgyoghduidhpqgvyv
    b h   b g y o g h d u i d h p q g v y v 
    Process finished with exit code 0
    
    
    //    下面是使用字符數組轉化爲字符串
    mport java.util.Scanner;
    public class test{
        public static void main(String[] args){
            Scanner input=new Scanner(System.in);
            char[] a={'a','d','d','v','e'};
            String mystr1=new String(a);    // 使用將字符數組名轉化爲String裏面的參數
            String mystr2=String.valueOf(a);    //  使用String.valueOf
            System.out.println(mystr1);
            System.out.println(mystr2);
            System.out.println(mystr2==mystr1);  // false 這種方法比價的是兩者的地址
            System.out.println(mystr1.equals(mystr2));  // ture 這種比較的是內容
        }
    
    //    輸出結果:
    D:\eclipse\jdk\bin\java.exe -Didea.launcher.port=59878 "-Didea.launcher.bin.path=D:\java_idea\IntelliJ IDEA 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "D:\java_idea\out\production\java_idea_source;D:\java_idea\IntelliJ IDEA 2019.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMainV2 test
    addve
    addve
    false
    true
    
    Process finished with exit code 0
    
    // 使用length可以求數組的長度,使用length()可以求字符串的長度
    mport java.util.Scanner;
    public class test{
        public static void main(String[] args){
            Scanner input=new Scanner(System.in);
            char[] a={'a','d','d','v','e'};
            String mystr1=new String(a);
            String mystr2=String.valueOf(a);
            System.out.println(mystr1);
            System.out.println(mystr2);
            System.out.println(mystr2==mystr1);
            System.out.println(mystr1.equals(mystr2));
            System.out.println(a.length);
            System.out.println(mystr1.length());
        }
    }
    
    //    輸出結果:
    D:\eclipse\jdk\bin\java.exe -Didea.launcher.port=60199 "-Didea.launcher.bin.path=D:\java_idea\IntelliJ IDEA 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "D:\java_idea\out\production\java_idea_source;D:\java_idea\IntelliJ IDEA 2019.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMainV2 test
    aqelr t
    aqelr t
    false
    true
    7
    7
    
    

    創建多維數組

  • 要創建二維數組必須在創建時多加一對方括號

  • //  以整型爲例
    int[][] myint=new int[10][10]

    對數組的排序

  • 可以使用冒泡排序

  • 也可以使用快排,使用快排必須導入import java.util.*  ,使用Array類的方法sort進行排序

  • // 以字符串數組爲例
    import java.util.*;
    public class test{
        public static void main(String[] args){
           Scanner input=new Scanner(System.in);
           String [] mystr=new String[10];
           for(int i=0;i<10;i++){
                mystr[i] = input.next();
            }
           Arrays.sort(mystr);
           for(int i=0;i<mystr.length;i++)
               System.out.println(mystr[i]);
        }
    }
    
    
    D:\eclipse\jdk\bin\java.exe -Didea.launcher.port=63357 "-Didea.launcher.bin.path=D:\java_idea\IntelliJ IDEA 2019.1\bin" -Dfile.encoding=UTF-8 -classpath "D:\java_idea\out\production\java_idea_source;D:\java_idea\IntelliJ IDEA 2019.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMainV2 test
    juy
    ooj
    dfrt
    gd
    yikthf
    jdsq
    ngk
    yjj
    ouh,
    ly
    dfrt
    gd
    jdsq
    juy
    ly
    ngk
    ooj
    ouh,
    yikthf
    yjj
    
    Process finished with exit code 0
    

喜歡就點個贊吧!!!

 

 

發佈了13 篇原創文章 · 獲贊 30 · 訪問量 2705
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章