• Java——数组


      数组是编程语言中最常见的一种数据结构,它可用于存储多个数据,一个数据被称为数组元素,通常可以通过数组元素的索引来访问数组元素,包括为数组元素赋值和取出数组元素的数据。Java语言的数组则具有它特有的特征。

    》理解数组:数组也是一种类型

      Java的数组要求所有数组元素具有相同 的数据类型。因此,在一个数组中,数据元素的类型是唯一的,即一个数组里只能存储一种数据类型的数据,而不能存储多种数据类型的数据。

    》第一种
    public static void main(String[] args) {
            //声明数组
            int[] score;
            
            //分配数组空间
            score = new int[5];
            
            //向数组中存放数据      数组下标从 0 开始
            score[0] = 80;
            score[1] = 85;
            score[2] = 87;
            score[3] = 90;
            score[4] = 95;
            //在 int类型中存放 字符串类型数据
            //score[4] ="abc";   //Type mismatch: cannot convert from String to int
            
            for (int i = 0; i < score.length; i++) {
                System.out.print(score[i]+"	");
                
            }
        }

      


     

    》第二种
    public static void main(String[] args) {
            
            //第二中声明数组的方式  它将声明数组、分配空间和赋值合并完成。
            int[] score = {80,85,87,90,95};
            //遍历数组
            for (int i = 0; i < score.length; i++) {
                System.out.print(score[i]+"	");
                
            }
        }

     


     

    》计算5名学生成绩的平均分
    public static void main(String[] args) {
            
            Scanner input =  new Scanner(System.in);
            //声明一个成绩数组
            int[] scores =new int[5];
            int sum=0;  //成绩总和
            for (int i = 0; i < scores.length; i++) {
                System.out.println("输入第"+i+"名学生的成绩:");
                scores[i]=input.nextInt();
                sum+=scores[i];  //成绩累加        }
            
            System.out.println("学员平均分是:"+(double)sum/scores.length);
    
        }

     


     

    》二维数组

    语法:

       数组类型  [][] 数组名;

      “[][]” 用于表明定义一个二维数组,通过多个下标进行数据访问。

    public static void main(String[] args) {
            
            //声明二维数组
             int[][] s = new int[][]{{80,66},{70,54,98},{77,59}};
             
             for (int i = 0; i < s.length; i++) {
                System.out.println(i);
                
                for (int j = 0; j < s[i].length; j++) {
                    System.out.print(s[i][j]+"	");
                }
                System.out.println();
            }
    
        }

     

    二维数组在内存中的分配原理图:

                  

     

      从上图我们看出,表面看来定义了一个二维数组,但是从内存分配原理角度讲,实际上是定义了一个一维数组。数组名为s,包括3个元素,分别为s[0]、s[1]、s[2],每个元素是整型数组类型,即一维数组类型。而s[0]又是一个数组的名称,包含5个元素,分别为s[0][0]、 s[0][1]、s[0][2]、s[0][3] 、s[0][4] ,每个元素都是整数类型。s[1]、s[2]与s[0]的情况相同。二维数组实际上是一个一维数组,它的每一个元素又是有个一维数组。

     

  • 相关阅读:
    python requests 模拟登陆网站,抓取数据
    python 爬取淘宝的模特照片
    vim 和grep 正则表达式相似和区别
    python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence
    python 正则表达式
    12个球,其中一个和其他的重量不一样,有一个天平,最多几次找出这个球
    25匹马中选出跑得最快的3匹,每次只有5匹马同时跑,最少要比赛几次
    1000瓶药水,1瓶有毒药,几只小白鼠能够找出毒药
    146 LRU Cache
    用两个int值实现读写锁
  • 原文地址:https://www.cnblogs.com/szj-ang/p/7262878.html
Copyright © 2020-2023  润新知