第六天学习java-数组

1.数组

  1. 数组也是保存数据的容器
  2. 也可以保存多个数据的容器
  3. 特点:数据类型一致或者兼容,地址是连续的
  4. 数组的声明:(1).数据类型[] 数组名;推荐使用(2).数组类型 数组名[];只有java中好用
  5. 声明空间 数组名=new 数据类型[大小]数据类型和声明时的数据类型是一致的
  6. 注意:分配完空间后,里面春芳默认设置
  7. 声明数组的同时可以分配哦空间
  8. 数组类型[] =new 数据类型[大小 ]
  9. 使用print数组名[索引]
  10. 数组的赋值(1)数据类型[] 组名= { };(2)数组类型[] =new 数据类型[大小 ]{}
  11. 数组的动态赋值(1)声明数组,分配空间(2)循环赋值
  12. 数组的遍历(1.)for循环(2.)增强for(jdk1.5能使用)for(数据类型 变量名:names)
  13. 注意:int []arr ={1,23,3}这种这声明数组的方式不能分开写.
  14. 注意开发中循环一般不能超过三层,超过三层会影响代码的可读性,执行效率,如果有三层 把其中一层写成方法反复调用这样也可以提高程序的效率

2. 二维数组

  1. 二维数组输出采用的双层循环输出

3.Arrays的使用

  1. 遍历: toString() 将数组的元素以字符串的形式返回
  2. 排序: sort() 将数组按照升序排列
  3. 查找: binarySearch()在指定数组中查找指定元素,返回元素的索引,如果没有找到返回(-插入点-1) 注意:使用查找的功能的时候,数组一定要先排序。

3.直接排序代码

public static void selectSort(int[] arr)
{
    for(int x=0; x<arr.length-1; x++)
    {
        for(int y=x+1; y<arr.length; y++)//为什么y的初始化值是 x+1?          因为每一次比较,
                                        //都用x角标上的元素和下一个元素进          行比较。
        {
            if(arr[x]>arr[y])
            {
                int temp = arr[x];
                arr[x] = arr[y];
                arr[y] = temp;
            }
        }
    }
  }

4.冒泡代码

 /*
冒泡排序。
比较方式:相邻两个元素进行比较。如果满足条件就进行位置置换。
原理:内循环结束一次,最值出现在尾角标位置。
*/
public static void bubbleSort(int[] arr)
{
    for(int x=0; x<arr.length-1; x++)
    {
        for(int y=0; y<arr.length-x-1; y++)//-x:让每次参与比较的元减。
                                            //-1:避免角标越界。
        {
            if(arr[y]>arr[y+1])
            {
                int temp = arr[y];
                arr[y] = arr[y+1];
                arr[y+1] = temp;
            }
        }
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值