20160731-----whileループ、1次元配列、Arraysクラスの方法と練習

7737 ワード

9、循環構造循環構造とは、ある条件を満たす場合に、あるコードを繰り返し実行することであり、適切な時に条件を偽にして循環を終了し、デッドサイクルを避ける必要がある.
Whileサイクル
while(  ){
      ;
}
  • Whileループも括弧()を省略できますが、推奨されません.
  • Whileサイクルは必ずサイクルがfalseになることを保証し、死のサイクルを避ける.

  • 二、配列
    1、配列定義
  • 配列は、参照データ型
  • に属するタイプである.
  • 配列のすべての要素データ型は同じ
  • である.
  • Javaの配列は、基本データ型と参照データ型の両方を格納することができる.
  • 配列には、カスタムデータ型(親と子が実はデータ型であるため、親と子を含むこともできる)
  • を配置することもできます.
  • 配列はメモリに連続した空間である.
  • 配列の空間は定義時に決定され、決定が変更できないと、配列中のデータがメモリに格納されていることが明らかになっても配列に属し、配列長は変わらない.

  • (2)一次元配列
    1)定義
        ①int  arr1[]=new int[5];
        ②int  arr2[]={1,2,3};
        ③int  arr3[]=new int[]{1,2,3};
    

    2)取り出し長さ:
        System.out.println(arr3.length);
    

    1 javaのlength属性は配列に対して言うので、例えばあなたは1つの配列を宣言して、この配列の長さを知りたいならlengthという属性を使いました.②javaにおけるlength()メソッドは文字列Stringに対して言う、この文字列の長さを見たいならlength()というメソッドを用いる.③javaのsize()メソッドは汎用集合について述べており、この汎用要素がいくつあるかを見たい場合は、このメソッドを呼び出して表示します!
    3)遍歴配列:
    for(int  i=0;i

    4)初期化
  • 静的初期化:
  •     ①int  arr1[]=new int[5];
        ②int  arr2[]={1,2,3};
        ③int  arr3[]=new int[]{1,2,3};
    
  • 動的初期化:
  • byte、short、int、longのデフォルトは0です.
  • float、doubleのデフォルトは0.0です.
  • charのデフォルトは「001」、すなわちスペースです.
  • booleanのデフォルトはfalseです.
  • 参照データ型のデフォルトはnullです.

  • 5)間違いやすい点
    int  arr[]= new int[2]{1,2};  //  
    

    6)Array類の常用方法:
    
    import java.util.Arrays;
    
    public class ArrayExercise {
        public static void main(String[] args){
            int arr1[]={1,2};
            int arr2[]={11,2,33,1,5};
            String []season={" "," "," "," "};
            arr1=arr2; //    
            //    
            System.out.println("1、  arr1:");
            for(int i:arr1){
                System.out.print(i+"\t");
            }
            System.out.println();
            
            //Arrays    
            //         
            System.out.println("2、  arr1、arr2    :");
            System.out.println(Arrays.equals(arr1, arr2));
            
            //     
            System.out.println("3、     :");
            Arrays.sort(arr2);
            for(int i:arr2){
                System.out.print(i+"\t");
            }
            System.out.println();
            
            //     string  
            System.out.println("4、     string  :");
            System.out.println(Arrays.deepToString(season));
            System.out.println(Arrays.toString(arr2));
            //              
            System.out.println("5、              :");
            Arrays.sort(arr2);
            System.out.println(Arrays.binarySearch(arr2, 2));
            //      
            System.out.println("6、    :");
            int arr3[]=Arrays.copyOf(arr2, 3);
            for (int i = 0; i < arr3.length; i++) {
                System.out.print(arr3[i]+"\t");
            }
        }
    }
    
    
    //    :
    
    1、  arr1:
    11  2   33  1   5   
    2、  arr1、arr2    :
    true
    3、     :
    1   2   5   11  33  
    4、     string  :
    [ ,  ,  ,  ]
    [1, 2, 5, 11, 33]
    5、              :
    1
    6、    :
    1   2   5   
    

    Test:
    //1、    、    、  、     
    
    public class textArr {
        public static void main(String[] args){
            //     
            int[] arr1=new int[5];
            int[] arr2={1,2,3};
            int[] arr3=new int[]{1,2,3,4};
            String[] strs=new String[3];
            //      :
            System.out.println("arr3      :"+arr3.length);
            //    
            System.out.println("arr2      :");
            for(int i=0;i
    //    :
    
    arr3      :4
    arr2      :
    1   2   3   
    arr1      :
    0   0   0   0   0   
    strs      :
    null    null    null    
    
    //2、       、  、  for  
    
    import java.util.*;
    
    public class ArrayInta {
        public static void main(String[] args){
            int[] arr=new int[5];
            //       
            Scanner scanner = new Scanner(System.in);
            for(int i=0;i
    //    :
    
          1     :2
          2     :   5
          3     :   7
          4     :   1
          5     :   3
          :
    2   5   7   1   3   
      for    :
    2   5   7   1   3   
    
    //3、      char     。
    
    public class ArrayReverse {
        public static void main(String[] args){
            char []cha={'d','o','g'};
            System.out.print("  cha{'d','o','g'}    :");
            for(int i=cha.length;i>0;i--){
                System.out.print(cha[i-1]);
            }
        }
    }
    
    
    //    :
    
      cha{'d','o','g'}    :god
    
    //4、   {1,4,2,6,7,3,5}   8   
    
    public class MateNum {
        public static void main(String[] args){
            int[] arr={1,4,2,6,7,3,5};
            int n=8;
            System.out.println("  {1,4,2,6,7,3,5}   8    ");
            for(int i=0;i
    //    :
    
      {1,4,2,6,7,3,5}   8    
    {1,8}   {4,8}   {2,8}   {6,8}   {7,8}   {3,8}   {5,8}   
    
    //5、    ,            .
    
    import java.util.*;
    
    public class OddNum {
        public static void main(String[] args){
            int sum;
            int oddNum=0;
            //       
            Scanner scanner = new Scanner(System.in);
            System.out.print("        :");
            sum=scanner.nextInt();
            int[] arr=new int[sum];
            for(int i=0;i
    //    :
    
            :5
          1     :   2
          2     :   5
          3     :   3
          4     :   7
          5     :   4
           :
    2   5   3   7   4   
                   :3
    
    //6、      a        m     。
    
    public class RandmComb {
        public static void main(String[] args){
            int[] a={1,2,3,4,5};
            int m=3;
            System.out.println("  a={1,2,3,4,5}   3      :");
            for(int i=0;i
    //    :
    
      a={1,2,3,4,5}   3      :
    1 2 3,1 2 4,1 2 5,1 3 4,1 3 5,1 4 5,
    2 3 4,2 3 5,2 4 5,
    3 4 5,
    
    
    //7、            。
    
    import java.util.*;
    
    public class Same {
        public static void main(String[] args){
            int arr1[]={2,4,6,8,10};
            int arr2[]={4,8,10,16,20};
            System.out.println("          :");
            if(arr1.length>=arr2.length){
                for(int i=0;i
    //    :
    
              :
    4
    8
    10
    
    //8、              。
    
    import java.util.*;
    
    public class ScoreAvg {
        public static void main(String[] args){
            Scanner scanner=new Scanner(System.in);
            int StudentSum;
            double ScoreSum=0;
            System.out.println("***********      ***********");
            System.out.print("       :");
            StudentSum=scanner.nextInt();
            double[] score=new double[StudentSum];
            //    
            for(int i=0;i
    //    :
    
    ***********      ***********
           :3
        1      :    98
        2      :    86
        3      :    79
            :87.66666666666667