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]);
                }
            }
    }

                      

  • 相关阅读:
    android绘画折线图二
    android绘画折线图一
    jQuery Select操作大集合
    jquery事件切换hover/toggle
    jquery $(document).ready() 与window.onload的区别
    canny边缘检测 C++手动实现
    高斯核原理和C++实现
    darknet-yolov3 burn_in learning_rate policy
    UserWarning: indexing with dtype torch.uint8 is now deprecated, please use a dtype torch.bool instead
    BatchNormaliation
  • 原文地址:https://www.cnblogs.com/noaman/p/4928774.html
Copyright © 2011-2022 走看看