数组的基本操作

1:数组的基本操作

获取元素:元素类型 变量 = 数组名[index];

设置元素:数组名[index] = 值;

遍历数组元素:

for(int index = 0;index <= nums.length-1;index++){

System.out.println(nums[index]);

数组长度:数组名.length;length是属性不是方法

索引范围:从0开始,逐一递增。[0,数组名.length-1]

2:操作数组的常见异常

NullPointerException:空指针异常(空引用):   当数组还未初始化就直接操作数组。

String[] bs = null;

system.out.println(bs.length)

ArrayindexOutOfBoundsException  数组的索引越界异常。

3:获取数组最大最小元素

获取最大元素:不要忘记传参数!!!!

public class ArrayDemo3 {

static int getMax(int[] nums){

int max = nums[0];

for(int index = 0;index <= nums.length-1;index ++)

{

if (nums[index] > max)

{

max = nums[index];

}

}

return max;

}

public static void main(String[] args) {

// TODO 自动生成的方法存根

int[] nums = new int[]{2,3,5,-3,4};

int max = getMax(nums);

System.out.println(max);

}

}

4:打印数组元素

直接打印数组的时候,打印出来是hashcode值

static void printArray(String[] arr)

{

if (arr == null)

{

System.out.println("null");

return;

}

String ret = "[";

for(int index = 0;index < arr.length;index++)

{

ret = ret + arr[index];

//如果当前index不是最后一个索引,则拼接","

if(index != arr.length-1)

{

ret = ret + ",";

}

}

ret = ret + "]";

System.out.println(ret);

}

main方法中

String[] arr = {"a","b","c"};

printArray(arr);

5:逆序排列数组元素

 

 

 

static String[] reverse(String[] oldArr)

 

{

 

String[] newArray = new String[oldArr.length];//创建一个新的数组,用来存放颠倒之后的元素

 

for(int index = oldArr.length-1;index >=0;index--)

 

{

 

newArray [oldArr.length-1-index] = oldArr[index];

 

}

 

return newArray;

 

}

6:元素出现索引(第一次/最后一次)

int[] arr = {10,20,30,10,50,10,50}

获取元素10在arr数组中第一次出现的索引(indexOf);

获取元素10在arr数组中最后一次出现的索引(lastIndexOf);

/*

* 查询key元素在nums数组中第一次出现的位置,

* 参数:

* nums:从哪一个数组中去做查询

* key:当前查询的元素

* 返回:如果key存在于arr数组中,则返回第一次出现的索引

* key不存在于nums数组中,返回-1.

*/

static int indexOf(int[] nums,int key)

{

for(int index = 0;index <= nums.length - 1;index++)

{

if(nums[index] == key)

{

return index;

}

}

return -1;

}

 

最后一次

static int lastIndexOf(int[] nums,int key)

{

for(int index = nums.length-1;index >= 0;index--)

{

if(nums[index] == key)

{

return index;

}

}

return -1;

}

原文地址:https://www.cnblogs.com/falling/p/7922756.html