java数组

数组是Java中的一类容器,主要用来存储多个类型相同的数据,并且存储的数据个数是固定的。

对于容器,它可以存储数据,也能从中取出数据。集合。

 

数组的特点:

类型统一,个数可固定,有下标。使用length以得到数组的长度

定义:

元素类型[] 数组名 = new 元素类型[数组长度];

元素类型[] 数组名 = {元素1,元素2...... 元素n};

 

数组的常见操作:由于数组有下标(索引index),每个下标都对应一个空间,只要能够拿到数组的这个下标,就能够去访问这个空间,也可以给这个空间存放数据。

由于数组的下标从0开始到长度-1结束,而这些数据正好在有序的变化,那么就可以使用循环提供数组的下标,然后使用数组名结合下标取出每个空间中的值。

遍历:

int[] arr = {4,1,8,6,0,-1};

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

{

System.out.println(arr[i]);

}

和值:

求和值,必选先定义个空间来记录每次取出的这个值和前面已经计算出来的值的和值。

int sum = 0;

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

{

sum += arr[i];

}

 

求最值:

可以假设数组中某个值是最大值,或者是最小值,然后遍历数组,取出其他的值,和假设的这个值进行比较,如果取出的值比这个大或者小,就替换假设的这个值。

int  max = arr[0];

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

{

if( max < arr[i] )

{

max = arr[i];

}

}

排序

2种排序:必须手动可以写出一种

选择排序:

for( int i=0;i<arr.length-1;i++ ) //提供数组中靠前某个空间的下标

{

for( int j=i+1;j<arr.length;j++ ) //提供外循环i下标后面剩余的所有空间的下标

{

if( arr[i] > arr[j] ) arr[i] 是数组中靠前的某个空间的下标  arr[j] 一定是i下标后面剩余的其他空间的下标

{

交换

}

}

}

冒泡排序:

for( int i=0;i<arr.length-1;i++ ) //控制次数

{

      for( int j=0;j<arr.length-1-i;j++ )

{

if( arr[j]  >  arr[j+1] )

{

交换

}

}

}

Arrays类数组工具类,它中提供了对数组各种操作。

查找:

1、根据值找下标

2、根据下标找值

常见的api  有如下



static <T> List<T> asList(T... a)
static <T> int binarySearch(T[] a, T key, Comparator<? super T> c)
asList(T... a)

static void fill(boolean[] a, boolean val)
Assigns the specified boolean value to each element of the specified array of booleans.


static <T> void sort(T[] a, int fromIndex, int toIndex, Comparator<? super T> c)
Sorts the specified range of the specified array of objects according to the order induced by the specified comparator.



asList(T... a)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值