陣列操作知識點小結
陣列位址轉移問題
陣列名是乙個引用資料型別的變數,其中儲存的是陣列占用堆空間首位址,陣列名之間的賦值操作,如:
int
arr1 =
newint[10
];int[
] arr2 =
newint[10
];arr2 = arr1;
詳見圖例:
/** * 該方法對傳入陣列進行迴圈遍歷並列印輸出陣列元素
* * @param arr int型別陣列
*/public
static
void
printarray
(int
arr)
system.out.
println();}}
結果為:
arr1 :
100000
05000
00arr2 :
100000
05000
00
陣列作為方法的引數
在main方法中 (string args)就是給陣列作為方法引數格式,main方法需要的引數是乙個string型別陣列。
格式:public static 返回值型別 方法名(資料型別 陣列名)
例1:找出元素30對應的下標位置
/*
需求:找出元素30對應的下標位置
方法分析:
固定格式:public static 不要問
返回值型別:int型別,返回指定元素的下標位置,沒有找到返回-1
方法名:indexof 獲取指定元素對應下標
形式引數列表:
int arr:查詢資料的源陣列,在哪乙個陣列中進行查詢操作,這裡需要乙個int型別陣列
int find:指定在陣列中查詢的元素
(int arr, int find)
方法宣告:
public static int indexof(int arr, int find)
*/class
demo2
;int find =30;
//呼叫方法,傳入陣列名,與查詢的元素find
int index =
indexof
(array, find);if
(index >=0)
else
}/**
* 在指定陣列arr中,查詢指定元素find所在的下標位置,找到返回值大於等於0,沒有找到
* 返回-1
* * @param arr 查詢資料的源資料陣列,int型別陣列
* @param find 指定在陣列中查詢的資料,也是對應int型別
* @return 找到指定元素,返回值大於等於0,否則返回-1
*/public
static
intindexof
(int
arr,
int find)
}//返回index中儲存的資料到方法外
return index;
}}
結果為:index :
7
例1方法的執行記憶體如圖所示
例2:
/*
需求:刪除陣列中的指定下標的元素
存在乙個陣列,陣列中的元素為
int array = ;
要求:1. 0是無效元素,僅佔位使用
需求:在當前陣列中刪除指定下標的元素
例如:刪除下標5的元素
結果
0佔位!!!
方法分析:
固定格式:public static
返回值型別:在陣列中刪除指定下標的元素,不需要返回值
方法名:delete
形式引數列表:傳入乙個int型別陣列,int型別資料指定的下標位置index
(int arr, int index)
【方法宣告】
public static void delete(int arr, int index)
*/class
demo3
;delete
(array,5)
;printarray
(array)
;delete
(array,5)
;printarray
(array)
;delete
(array,5)
;printarray
(array);}
/** * 該方法傳入乙個陣列,然後根據傳入的指定的陣列下標位置index,刪除該位置的元素
* * @param arr int型別陣列
* @param index int型別資料 指定下標位置
*/public
static
void
delete
(int
arr,
int index)
//為陣列最後一位賦值0,佔位使用
arr[arr.length -1]
=0;}
/** * 該方法對傳入陣列進行迴圈遍歷並列印輸出陣列元素
* * @param arr int型別陣列
*/public
static
void
printarray
(int
arr)
system.out.
println();}}
結果為:13
57913
1517190
1357
915171900
1357
917190
00
知識點小結
華為 1.c與c 哪個效能比較好?從語言特性角度上來看,c 是c的超集。在 c c的這部分語言特性中有很多會降低執行效率。乙個例子是dynamic cast,執行乙個dynamic cast要消耗100 300個cpu cycles,因為機器要跳到一段特別的snippet 一小段程式 去檢查type...
知識點小結
一 mysql計算日期 timestampdiff day,t3.payment due date,now 二 字段轉換 case when t1.status in d01 a01 a00 then 三 mybatis在插入資料時,返回id usegeneratedkeys true keypro...
unity知識點小結
1 通過gameobject.find 玩家物體 getcomponent 獲取玩家的player指令碼 2 quaternion.identity就是指quaternion 0,0,0,0 就是每旋轉前的初始角度,是乙個確切的值,而transform.rotation是指本物體的角度,值是不確定的...