1. 程式人生 > >Java之System.arrayCopy()的用法

Java之System.arrayCopy()的用法

System.arrayCopy(Object srcArray,int srcPos,Object destArray ,int destPos,int length)

思路:

  1. Object srcArray 原陣列(要拷貝的陣列)
  2. int srcPos 要複製的原陣列的起始位置(陣列從0位置開始)
  3. Object destArray 目標陣列
  4. int destPos 目標陣列的起始位置
  5. int length 原陣列的長度

例子1:

原陣列:int[] arr={1,2,3,4,5,6,7,8,9,0};
目標陣列:int[] targetArr=new int[4];
操作:將原陣列第二個位置以後的4個數據copy到目標陣列
    System.arrayCopy(arr,1,targetArr,0,arr.length);

高階:

連續按一個按鈕3次,統計時間是否在1秒鐘內完成

long[] hints=new long[3];

public void onClick(View view){    //按鈕的點選事件

    //將hints陣列內的所有元素左移一個位置
    System.arrayCopy(hints,1,hints,0,hints.length()-1);
    //獲得當前系統已經啟動的時間
    hints[hints.length-1]=SystemClock.uptimeMillis();
    SystemClock.uptimeMillis();
    if(SystemClock.uptimeMillis() - hints[0] <= 1000){
        Toast.makeText(this,"您點選了3次",Toast.LENGTH_SHORT).show();
 }