JavaSE05

数组

定义
  • 相同类型数据的有序集合
声明和创建
  • 声明
        int[] nums;//声明数组(首选)
        int nums2[];
  • 创建
        int[] arr = {1,2,4};//静态初始化(创建+赋值)
        nums=new int[10];// 动态初始化(含默认值)             创建数组 nums数组里可以存放10个int类型的数字,编号0-9
        nums2 = new int[]{1,2,3};
  • 赋值
       nums[0]=5;//赋值
       System.out.println(nums[0]);//5
特点
  • 大小固定,一旦被创建大小不再改变
  • 数组中的元素类型必须相同
  • 数组中的元素可以是任何数据类型中的一种(基本类型和引用类型)
  • 数组变量属于引用类型,数组也是对象,数组元素相当于对象的成员变量数组对象本身存在堆中
  • 通过.***length***获取数组长度
  • 越界异常:ArrayIndexOutOfBoundsException:
Java的内存分析
  • 方法区
  • 堆:专门存放new出来的对象和数组
  • 栈:存放变量的类型
数组的使用
  • 普通for循环
  • for-Each循环
  • 数组作为方法参数
  • 数组作为返回值
  //反转数组
   public static int[] convertArr(int[] arr){
       int[] converArr=new int[arr.length];
       for (int i = 0,j=arr.length-1; i < arr.length; i++,j--) {
           converArr[i]=arr[j];
       }
       return converArr;
   }
多维数组
 int[][] arr={{1,2,3},{4,5,6},{7,8,9,1},{10,11,12}};
        //二维数组的遍历
        for (int i = 0; i < arr.length; i++) {
            for(int j=0;j<arr[i].length;j++){
                System.out.print(arr[i][j]+"\t");
            }
            System.out.println();
        }
冒泡排序
   int arr[]={1,3,5,7,5,5,2,9};
       //冒泡排序
       //外层循环判断我们要走多少次
       for (int i = 0; i < arr.length-1; i++) {
           boolean flag=false;
           for (int j = 0; j < arr.length-i-1; j++) {
               if(arr[j+1]>arr[j]){
                   int temp=arr[j];
                   arr[j]=arr[j+1];
                   arr[j+1]=temp;
                   flag=true;
               }
           }
           if (flag==false){
               break;
           }
       }
       System.out.println(Arrays.toString(arr));
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值