zoukankan      html  css  js  c++  java
  • 2019-05-16 Java学习日记 day6

    1.数组

    数组是容器

    为了存储同种数据类型的多个值

    数组概念:

      数组是存储同一种数据类型的多个元素的集合,也可以一个容器

      数组既可以存储基本数据类型,也可以存储引用数据类型

    数组初始化:就是为了数组开辟连续的内存空间,并为每个数组元素赋予值

    分类:

    动态初始化:

      只指定长度,由系统给出初始值

      格式:数据类型 [ ] 数组名 =new   数据类型[ 数组长度]

    静态初始化:

      给出初始化,由系统决定长度

      格式:数据类型 [ ] 数组名 = new  数据类型 [ ] {元素1,元素2}

    系统给出默认初始化值,整数类型都是0

    整数类型:byte,short,int,long 默认初始化值:0

    负点整数:float,double 默认初始化值:0.0

    布尔类型:boolean 默认初始化值“”false

    字符类型:char 默认初始化值:'u0000'

      'u0000'每个0代表的是16进制的0,四个0就是代表16个二进制

    数组的形式:

    栈:存储局部变量  堆:存储new出来的数组  方法区:面向对象部分讲解

    本地方法区:和系统相关  寄存器:给cpu使用

    数组索引越界异常:当访问数组中不存在的索引,会出现索引越界异常

    空指针异常:数组已经不再指向堆内存了,而还用数组名去访问元素

    class demoarray2          //比较大小值
    {
        public static void main (String args[]) {
            int[] arr={50,100,58,54,60,90,80};
            int max=print(arr);
            System.out.println("最大值="+max);
            int min=getmin(arr);
            System.out.println("最小值="+min);
        }
        public static int print(int[] arr){
            int max=arr[0];
          for(int i=0;i<arr.length;i++){  //从数组的第一个开始遍历
           if(max<arr[i]){                          //如果max记录的值小于的数组的元素
           max=arr[i];                               //max记录住最大的;
           }
          }
          return max;
        }
        public static int getmin(int[] arr){
            int min=arr[0];
          for(int i=0;i<arr.length;i++){  //从数组的第一个开始遍历
           if(min>arr[i]){                          //如果max记录的值大于的数组的元素
           min=arr[i];                               //max记录住最大的;
           }
          }
          return min;
        }
    }
    遍历比较大小
    class demoarray3       //反转
    {
        public static void main (String args []){
            int[] arr={1,2,3,4,5,6,7,8};
            array(arr);
            print(arr);
        }
        public static void array(int[] arr){
            for(int i=0;i<arr.length/2;i++){
              int temp =arr[i];
              arr[i]=arr[arr.length-1-i];
              arr[arr.length-1-i]=temp;
        }
        }
        public static void print(int[] arr){
                for(int i=0;i<arr.length;i++){
                    System.out.print(arr[i]);
                }
        }
    }
    反转操作
    import java.util.Scanner;
    class demoarray4
    {
        public static void main (String args []){
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入对应的星期范围在1-7");
                int week=sc.nextInt();
            System.out.println("星期"+getweek(week));
        }
            public static char getweek(int week){
                char[] arr={' ','一','二','三','四','五','六','日'};
                return arr[week];    //通过索引获取表中的元素
            }
    }
    键盘查找对应的星期
    class demoarray5
    {
        public static void main(String args []){
            int[] arr={1,2,3,4,5,6,7};
            int index =getindex(arr,7);
            System.out.println(index);
        }
        /*
        查找元素索引
        1.返回值类型int
        2.明确参数列表,int[] arr,int value
        */
        public static int getindex(int [] arr,int value){
            for(int i=1;i<arr.length;i++){  //数组的遍历
                    if(arr[i]==value){              //如果数组中的元素与查找的元素匹配
                    return i;
                    }
        }
        return -1;
    }
    }
    查找

    二维数组:

    格式:

      数据类型 [ ] [ ] 数组名=new 数据类型 [ ] [ ]

      数据类型 数组名 [ ] [ ]=new 数据类型 [ ] [ ]

      数据类型 [ ] 数组名  [ ]=new 数据类型 [ ] [ ]

    class demo1_array
    {
        public static void main (String args []){
        //int [] [] arr=new int[3] [2];
        int [] [] arr={{1,2,3},{4,50,5},{6,7,8,9}};
        int sum=0;          //定义变量,记录每次相加的结果
        for(int i=0;i<arr.length;i++){    //获取每一个一维数组
            for(int j=0;j<arr.length;j++){   //获取每一个一维数组的元素
                sum=sum+arr[i][j];               //累加
            }
        }
        System.out.println(sum);    }
    }
    相加
  • 相关阅读:
    sublime text 4 vim 插件配置
    ssh-keygen 的使用
    distribution transaction solution
    bilibili 大数据 视频下载 you-get
    Deepin 20.2.1 安装 MS SQL 2019 容器版本
    【转】使用Linux下Docker部署MSSQL并加载主机目录下的数据库
    【转】You Can Now Use OneDrive in Linux Natively Thanks to Insync
    dotnet 诊断工具安装命令
    Linux 使用 xrandr 设置屏幕分辨率
    【转】CentOS 7.9 2009 ISO 官方原版镜像下载
  • 原文地址:https://www.cnblogs.com/JungTan0113/p/10879144.html
Copyright © 2011-2022 走看看