• 4.一维数组


    一数维组
    package com.atguigu.java;
    /*
     * 1.数组相关概念
     * >数组名
     * >数组元素
     * >角标、下标、索引
     * >数组的长度,元素的个数
     *
     * 2.数组的特:
     * 数组是有序的
     * 数组属于引用数据类型的变量,数组的元素可以是基本数据类型,也可以是引用数据类型
     * 创建数组对象会在内存中开辟一整块连续空间
     * 数组长度一旦确定,就不能修改
     *
     * 3.数组的分类:
     * 按照维度:一维数组、二维数组、……
     * 按照数组元素:基本数据类型、引用数据类型
     *
     * 4.一维数组的使用
     * 1)一维数组的声明和初始化
     * 2)如何调用数组的指定位置的元素
     * 3)如何获取数组长度
     * 4)如何遍历数组
     * 5)数组元素的默认初始化
     * 6)数组的内存解析
     *
     *
     */
    public class ArrayTest {
     public static void main(String[] args) {
      
      //1。一维数组的生命和初始化
      int num ;//声明
      num = 10;//初始化
      int num1 = 101;//声明和初始化合一
      
      int[] ids;//声明
      //静态初始化:数组的初始化和数组元素的赋值操作同时进行
      ids = new int[]{10,11,13,14};
      
      //动态初始化:数组的初始化和数组元素的赋值操作分开进行
      String[] name = new String[5];
      
      
      //2.如何调用数组的指定位置的元素:通过角标的方式调用
      //数组的角标(索引)从0开始,到数组的长度-1结束。
      name[0] = "王明";
      name[1] = "lisi";
      name[2] = "wangwu";
      name[3] = "aa";
      name[4] = "bb";
      
      //3.如何获取数组长度
      System.out.println(name.length);
      System.out.println(ids.length);
      
      //4.如何遍历数组
      for(int i = 0;i<name.length;i++) {
       System.out.println(name[i]);
      }
      
      //5.数组元素的默认初始化
      //    数组元素是整型:0
      //    数组元素是浮点型:0.0
      //    数组元素是char型:0或"u0000",而非‘0’
      //    数据类型是boolean型:false
      
      //   数据类型是引用数据类型:null
      int[] arr = new int[4];
      for(int i = 0; i < arr.length; i++) {
       System.out.println(arr[i]);
      }
      
     }
     
    }
    一维数组的内存解析(粗略)
     
    package com.atguigu.exec;
    import java.util.Scanner;//导包快捷键 ctrl+shift+o
    /*
     * 从键盘读入学生成绩,找出最高分,并输出学生成绩等级。
     * >成绩>=最高分-10  等级为A
     * >成绩>=最高分-20  等级为B
     * >成绩>=最高分-30  等级为C
     * >其余                              等级为D
     *
     *
     */
    public class ArrayDemo {
     
     public static void main(String[] args) {
      
      //1.使用Scanner,读取学生个数
      System.out.println("请输入学生人数:");   //任何位置使光标换行:shift+回车 
      Scanner scan = new Scanner(System.in);      //使光标在上面一行换行:ctrl+shift+回车
      int number = scan.nextInt();                //可以scan.nextInt();+ctrl+1
      
         //2.创建数组,存储学生成绩,动态初始化
      int[] num = new int[number];
      
      //3.给数组中的元素赋值
      System.out.println("请输入"+number+"个成绩");
      for(int i = 0;i < number;i++) {
       num[i] = scan.nextInt();  
      }
      
      //4.获取数组中的元素的最大值
      int max = num[0];
      for(int i = 1; i < number; i++) {
       if(num[i]>max) {
        max = num[i];
       }
      }
      System.out.println("最高分是:" + max);
      //3.4 优化
      /*
        int max = num[0];
        System.out.println("请输入"+number+"个成绩");
        for(int i = 0;i < number;i++) {
           num[i] = scan.nextInt();
           if(num[i]>max) {
        max = num[i];
        }
        }   
       */
      //5.根据每个学生成绩与最高分的差值,得到每个学生等级
      for(int i = 0;i < number; i++) {
       if((max-num[i]) <= 10) {
        System.out.println("student "+i+" score is "+num[i]+" grade is "+"A");
       }else if((max-num[i]) <= 20) {
        System.out.println("student "+i+" score is "+num[i]+" grade is "+"B");
       }else if((max-num[i]) <= 30) {
        System.out.println("student "+i+" score is "+num[i]+" grade is "+"C");
       }else {
        System.out.println("student "+i+" score is "+num[i]+" grade is "+"D");
       }
      }
      //视频老师
      char level;
      for(int i = 0;i < number; i++) {
       if((max-num[i]) <= 10) {
        level = 'A';
       }else if((max-num[i]) <= 20) {
        level = 'B';
       }else if((max-num[i]) <= 30) {
        level = 'C';
       }else {
        level = 'D';
       }
       System.out.println("student "+i+" score is "+
            num[i]+" grade is "+level);
      } 
     }
    }
  • 相关阅读:
    Virtualbox中不能为虚拟机打开一个新任务的原因及解决方法
    CSS 制作三角形原理剖析
    java 执行jar指定log4j.properties文件位置
    Git submodules
    IO模型
    Error during WebSocket handshake 403
    Proto(协议缓冲区)
    gRPC
    Node.js 模块机制
    Node.js 模块机制及常见面试问题解答
  • 原文地址:https://www.cnblogs.com/sun1997/p/12364937.html
Copyright © 2020-2023  润新知