Java 2

一、数组的声明与实例化

数组是用一个变量来描述"一组同类型的数据"
所有的数组,均是引用数据类型

声明:(以int数组为例)
int[] a; //比较好
int a[];

数组是一种最基础的"数据结构"
数组的特点:
1.同数据类型
2.定长,实例化数组时必须给定最大长度(最大存储量)
3.在内存中是连续分布的

实例化数组时,必须直接或者间接的声明数组的长度。
new int[5]; //实例化了一个长度是5的整数数组
int[] a=new int[6];
new int[]{1,2,3,4,5};
语法糖:{1,2,3,4,5};

二、数组的内存模型(基本数据类型与引用数据类型的区别)

1.基本数据类型的数据,直接保存在栈帧的"操作数表"中。

//for-each句式
//使用一个变量k,逐个便利a数组中的所有数据
for(int k:a){}k默认是0

三、数组操作的内置API

Arrays工具类,包含了一些关于数组操作方法
Arrays.toString(a);将数组数据转换为字符串形式

Arrays.sort(a);将数组数据进行自然排序(升序),内部使用"快速排序"

int index=Arrays.binarySearch(a, key);
//二分查找法:找到对应数字所在的位置(下标),key不存在返回一个负数
注:但是得先将数组进行排序

四、数组的排序算法(冒泡排序和选择排序)

(1) 冒泡排序法

public class maopao {

	public static void main(String[] args) {
		int[] a= {2,4,6,1,25,35,62,21};
		int i,tmp,j;
		for(j=1;j<a.length;j++)
		for(i=0;i<a.length-j;i++)
		{
			if(a[i]>a[i+1]) {
				tmp=a[i];
				a[i]=a[i+1];
				a[i+1]=tmp;
			}
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值