zoukankan      html  css  js  c++  java
  • 【宋红康学习日记5】数组

      昨天写好的数组总结结果没有保存丢失掉了,现在重新写一下。

      数组是用来存储数据的,是相同类型数据的组合,数组分为一维数组和多维数组,这里多维数组主要以二维数组为例。

      一、数组的初始化

      1.维数组初始化分为静态和动态初试化两张。静态初始化:int[] arr=new int[ ]{1,2,3};

                          动态初始化:int[] arr=new int[3];  (一定要指明数组长度)arr[0]=2;arr[1]=4;arr[2]=89;

      2.维初始化和一维初始化原理相同。静态初始化:int[][] arrs=new int[][]{{1,32},{3,45},{45,567}};

                      动态初始化:int[][] arrs=new int[3][];(一定要指明数组长度);

                            arrs[0]=13;arrs[1]=33;(再进行一维数组初始化赋值)

                            注意:这样写是错误的!(String[][] strs=new String[3][2];strs[0][1]=2;这样写是错误的,因为没有对一维数组进行初始化规定其长度,所以没法引用数组

      3.数组长度:arr.length;arrs.length;arrs[i].length.

      4.数组初始化默认的值

        1)对于byte short int long,数组初始化值为0;

        2)对于float double,数组值初始化值为0.0;

        3)对于char字符而言,数组初始化默认值为空格;

        4)对于boolean而言,数组初始化默认值为false;

        5)对于引用型数据如数组、类、接口而言,数组初始化默认值为null;

      

       二、数组的内存结构

      1.一维数组内存结构图                                                                                          

            2二维数组内存结构图

                还有几种异常,数组下标越界异常和空指针异常,使用时多加注意。

        在这里还涉及到了数组的一些算法,如冒泡法等。在这里不多说。

      

    class Shuzu4 
    {
        public static void main(String[] args) 
        {
            int[] arr=new int[]{12,34,55,22,54,3,2,2,-9,0,-89};
            //最大值
            int max=arr[0];
            for(int i=0;i<arr.length;i++){
                if(max<=arr[i]){
                    max=arr[i];
                }
            }
            System.out.println("最大值是"+max);
            //最小值
            int min=arr[0];
            for(int i=0;i<arr.length;i++){
                if(min>=arr[i]){
                    min=arr[i];
                }
            }
            System.out.println("最小值是"+min);
            //总和
            int sum=0;
            for(int i=0;i<arr.length;i++){
                sum+=arr[i];
            }
            System.out.println("总和是"+sum);
            //平均数
            double ave=0;
            ave=sum/arr.length;
            System.out.println("平均数是"+ave);
            //复制
            int[] arr1=new int[arr.length];
            for(int i=0;i<arr1.length;i++){
                arr1[i]=arr[i];
            }
            //数组中元素反转
            for(int i=0;i<arr.length/2;i++){
                int temp=arr[i];
                arr[i]=arr[arr.length-i-1];
                arr[arr.length-i-1]=temp;
            }
    
            //
                for(int x=0,y=arr.length-1;x<y;x++,y--){
                    int temp=arr[x];
                    arr[x]=arr[y];
                    arr[y]=temp;
                }
            //遍历
            for(int i=0;i<arr1.length;i++){
                    System.out.println(arr1[i]);
                }
            }
    }

                      

  • 相关阅读:
    CCF CSP 题解
    CCF CSP 2019032 二十四点
    CCF CSP 2018121 小明上学
    CCF CSP 2019092 小明种苹果(续)
    CCF CSP 2019091 小明种苹果
    CCF CSP 2019121 报数
    CCF CSP 2019031 小中大
    CCF CSP 2020061 线性分类器
    CCF CSP 2020062 稀疏向量
    利用国家气象局的webservice查询天气预报(转载)
  • 原文地址:https://www.cnblogs.com/noaman/p/4928774.html
Copyright © 2011-2022 走看看