第七章 数组

数组:一组相同类型变量的集合
   
   
  1. //写法
  2. int[] array;(要求)
  3. int array[];
数组是引用数据类型,数组创建时必须要设置数组的大小(长度)。
   
   
  1. //方式一
  2. int[] array = new int[10];
  3. //方式二
  4. int[] array = new int[]{1,2,3,4,5}
  5. //方式三
  6. int[] array = {1,2,3,4,5}

数组的特点:数组一旦创建后,长度不可变,数组元素具备默认值。
访问数组,通过元素的索引来访问。索引从0开始

如何遍历数组元素?
   
   
  1. for(int i = 0 ; i < array.length; i++){ //此处的length是属性
  2. }


冒泡排序
原理:使用嵌套循环,外层循环控制比较的轮数,里层循环控制每一轮比较的次数。
            循环体:每次循环将相邻的两数比较,如果比较的前一个比后一个数小,则交换两数的位置
            外层循环的条件:数组长度  -1
            里层循环的条件:从数组的第一个元素开始,到数组最后第二个元素为止 再  - i
   
   
  1. //数组的降序排列算法
  2. int[] array = new int[]{87,65,98,47,53};
  3. //外层循环控制比较的轮数
  4. for(int i = 1; i < array.length; i++){
  5. //里层循环控制每一轮比较的次数,-i的目的在于扣除上一轮最终比较后的不参与比较的最大或者是最小值
  6. for(int j = 0; j < array.length-i; j++){
  7. //用当前索引的元素和下一个元素进行比较
  8. if(array[j] < array[j+1]){
  9. //交换两数
  10. int temp = array[j];
  11. array[j] = array[j+1];
  12. array[j+1] = temp;
  13. }
  14. }
  15. }

选择排序
每一轮比较后,将最大的数或最小的数放在第一个数处
   
   
  1. //外层循环的i表示要比较的第一个数的索引
  2. for(int i = 0; i < array.length-1; i++){
  3. //里层循环的j表示要比较的第二个数的索引
  4. for(int j = i+1; j < array.length; j++){
  5. //使用i索引对应元素依次和后面的每一个元素进行比较
  6. if(array[i] < array[j]){
  7. int temp = array[i];
  8. array[i] = array[j];
  9. array[j] = temp;
  10. }
  11. }
  12. }


二维数组:数组中的每个元素的类型也是数组
   
   
  1. //创建了一个长度为5 的二维数组,该数组包含了5个数组类型的变量
  2. int[][] array = new int[5][];

打印显示二维数组元素的每个值
   
   
  1. for(int i = 0 i < array.length; i++){
  2. for(int j = 0;j < array[i].length;j++){
  3. }
  4. }

对象数组
        对象数组的元素默认值为null,因此当时使用对象数组时,必要对数组元素进行实例化才能使用。
        数组是引用数据类型,因此元素不应引用同一个实例对象。



获取当前时间
   
   
  1. import java.util.Date
  2. Date date = new Date();
  3. //显示字符串格式的时间
  4. new Date().toLocaleString()
  5. //格式化自定义的时间显示
  6. new simpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
  7. //获取当前时间对应的毫秒值
  8. getTime()方法










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值