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);    }
    }
    相加
  • 相关阅读:
    [洛谷P4774] [NOI2018]屠龙勇士
    [洛谷P3338] [ZJOI2014]力
    [洛谷P1707] 刷题比赛
    svn查看指定版本提交信息的命令
    ajax无刷新上传文件
    给docker里的php安装gd扩展
    PHP基于openssl实现的非对称加密操作
    php获取文件扩展名
    javascript格式化日期
    javascript获取url参数
  • 原文地址:https://www.cnblogs.com/JungTan0113/p/10879144.html
Copyright © 2011-2022 走看看