JAva配列の使用

23331 ワード

一、配列の作成
Javaでの配列の定義はc言語とは異なります.
//      
    []      = new      [] {
            };
//      
    []      = {
            };

配列:同じデータ型のセットが格納され、メモリは連続しています.new:オブジェクトをインスタンス化します.int[]array={1,2,3,4,5}のarrayは参照であり、データのアドレスが格納されている
    public static void main(String[] args) {
     
        int[] array = {
     1,2,3,4};
        int[] array2=new int[]{
     11,22,33,44};
        int[] array3=new int[4];
    }

二、配列の使用
int[] arr = {
     1, 2, 3};
System.out.println("length: " + arr.length); //     : 3
//         
System.out.println(arr[1]); //     : 2
System.out.println(arr[0]); //     : 1
arr[2] = 100;
System.out.println(arr[2]); //     : 100

注意事項:
  • arr.lengthを使用して配列の長さを取得できます.この操作はメンバーアクセスオペレータです.後でオブジェクト向けによく使用されます.
  • .
  • []を使用して配列要素を下付きで取り出す.なお、下付きは0から
  • をカウントする.
  • []操作を用いるデータを読み取ることも、データを修正することもできる.
  • .
  • の下付き文字アクセス操作は有効範囲[0,length-1]を超えてはならず、有効範囲を超えた場合、下付き文字の境界異常が発生する.配列を巡る2つの方法
  • public static void main(String[] args) {
         
        int[] array={
         1,2,3,4}
        for (int i=0;i<array.length;i++){
         
            System.out.println(array[i]+" ");
        }
        System.out.println("===============");
        for (int val:array) {
         
            System.out.println(val+" ");
        }
    }
    

    forとforeachの違い:オブジェクトがランダムにアクセスできるforの場合、効率が高く、アクセスオブジェクトが順次foreachの場合、foreachがアクセスとして使用され、配列やリストの操作が行われないことに注意します.
    配列によるパラメータ転送
    配列パラメータの場合、配列名はc言語のアドレスと同様に参照され、伝達関数のパラメータも参照されます.これにより、配列の無効なコピーを回避できます.
    認識null
    ここでnullはc言語とは異なり、nullはjavaで空の参照、すなわち無効な参照を表します.
        public static void main(String[] args) {
         
            int a=0;
            System.out.println(a);
            int[] array=null;//array        
            System.out.println(array);
        }
    

    Arrays
    Arrays:配列を操作するツールクラス.java.until.Arrays;多くの実用的な方法.Arrays.toString();//配列中のデータを文字列で出力します.
        public static void main(String[] args) {
         
            int[] array={
         1,2,3,4,5,6,7,8,9,10};
            //              
            System.out.println(Arrays.toString(array));
        }
    

    三、配列のコピー
    Javaでの配列のコピーには4つの方法があります.1.forループで
        public static int[] copyArray(int[] array) {
         
            int[] ret=new int[array.length];
            for (int i = 0; i < array.length; i++) {
         
                ret[i]=array[i];
            }
            return ret;
        }
        public static void main(String[] args) {
         
            int[] array={
         1,2,3,4,5,6,7};
            int[] ret=copyArray(array);
            System.out.println(Arrays.toString(ret));
        }
    

    2.Arrays.copyOf Arrays.copyOf(誰をコピーするか、コピーする内容)
        public static void main(String[] args) {
         
            int[] array={
         1,2,3,4,5,6,7};
            int[] ret=Arrays.copyOf(arraya,rray.length);
            System.out.println(Arrays.toString(ret));
        }
    
    

    3.System.arraycopy System.arraycopy
        public static void main(String[] args) {
         
            int[] array={
         1,2,3,4,5,6,7};
            int[] ret=new int[array.length];
           System.arraycopy(array,srcPos:0,ret,destPos:0,array.length);
            System.out.println(A rrays.toString(ret));
    

    4.clone()clone:このオブジェクトのコピーが生成されました.この方法はObjectのクローン方法です.
        public static void main(String[] args) {
         
            int[] array={
         1,2,3,4,5,6,7};
            int[] ret=array.clone();
            System.out.println(A rrays.toString(ret));