博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数组,数组越界异常,增强for循环,数组索引,循环遍历数组,利用数组动态输入学生成绩,循环遍历输出数组内容
阅读量:3940 次
发布时间:2019-05-24

本文共 2291 字,大约阅读时间需要 7 分钟。

  1. 数组为引用类型,默认值为null

  2. 数组的创建可以分为2步,第一步定义变量名,第二步new开辟空间

    比如:
    在这里插入图片描述
    在这里插入图片描述
    而不能按如下方式赋值
    在这里插入图片描述

  3. ==数据类型[]==表示这是一个什么类型的数组,两者不能分开。

  4. 数组必须初始化长度,且不能动态改变。

  5. 数组通过length属性来获取数组长度,length是数组的长度

  6. 数组定义与普通变量的定义是一致的

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

  7. 数组长度从0开始到length-1,索引只能到length-1

  8. 如果数组下标取到length,则会发生数组越界;

  9. 通过索引获取数组内容,即数组名[i],其中i属于0到length。

  10. 输出数组名输出的是一个哈希码值,表示数组存储的首地址。

  11. 如果操作数组的长度超过length-1,就会发生数组越界

  12. 可以用一个int类型的变量len来承接数组长度length,这样可以直接调用len,来使用数组长度,修改数据时也不用修改数组长度的变量

    在这里插入图片描述

什么是数组:

在这里插入图片描述
如何定义一维数组:
在这里插入图片描述
数组在内存中如何存在:
在这里插入图片描述
输出数组名,输出的是什么内容:
在这里插入图片描述

package com.javasm.array;/** * @author: JAVASM * @classNAME: ArrayDemo * @description: * @date: 2021/3/28 20:31 * @version:0.1 * @since:1.8 */public class ArrayDemo {
public static void main(String[] args) {
int[] studentNums=new int[5]; for (int i = 0; i < 5; i++) {
studentNums[i]=i; } for (int i = 0; i < 5; i++) {
System.out.println(studentNums[i]); } }}代码输出结果如下:01234Process finished with exit code 0

如果我们调用的数组范围超过了0~length-1,将会发生数组越界的错误(java.lang.ArrayIndexOutOfBoundsException)

利用数组动态输入学生成绩,循环遍历输出数组内容

遍历数组,动态录入数组

通过将数组名.length赋值给int类型的变量len,来获取数组的长度

package com.javasm.array;import java.util.Scanner;/** * @author: JAVASM * @classNAME: ArrayDemo02 * @description: * @date: 2021/3/28 21:25 * @version:0.1 * @since:1.8 */public class ArrayDemo02 {
public static void main(String[] args) {
//利用数组动态输入学生成绩,循环遍历输出数组内容 System.out.println("请输入5个学生的成绩"); //定义数组 double[] studentScore=new double[5]; Scanner input = new Scanner(System.in); //可以用一个int类型的变量len来承接数组长度length,这样可以直接调用len,来使用数组长度 int len=studentScore.length; for (int i = 0; i < 5; i++) {
System.out.println("请输入第"+(i+1)+"个学生的成绩"); //注意对数组赋值要用 数组名[index] studentScore[i]= input.nextDouble(); } //循环遍历输出数组的内容 for (int i = 0; i < len; i++) {
System.out.println("第"+(i+1)+"个学生的成绩为"+studentScore[i]); } }}代码输出结果如下:请输入5个学生的成绩请输入第1个学生的成绩99请输入第2个学生的成绩88请输入第3个学生的成绩77请输入第4个学生的成绩66请输入第5个学生的成绩88第1个学生的成绩为99.0第2个学生的成绩为88.0第3个学生的成绩为77.0第4个学生的成绩为66.0第5个学生的成绩为88.0Process finished with exit code 0

增强for循环

  1. 增强for循环格式
    for(容器元素数据类型 变量名:容器名称){}
  2. 增强for循环有2个参数,第一个定义数组类型的变量,第二个参数是所需要遍历的数组名。
  3. 增强for循环的好处是十分便利的输出容器内的内容,但缺点是不能直接操作索引值。
  4. 增强for循环的作用是将容器内的每一个变量依次赋值给前面类型的变量
    在这里插入图片描述

转载地址:http://uknwi.baihongyu.com/

你可能感兴趣的文章
关于安装系统后不能启动的问题!
查看>>
U盘的挂载过程-先记录一下
查看>>
python程序启动过程报错的排错一般步骤
查看>>
linux下UEFI的管理
查看>>
类thinkpad笔记本安装deepinv20后启动黒屏的解决
查看>>
利用本地centos镜像升级centOS
查看>>
FreeBSD常用操作
查看>>
VC及esxi升级的必要性和步骤
查看>>
hp DL338服务器修改ilo管理地址
查看>>
vmware convert P2V 错误二三事
查看>>
让kali2020中的zsh有补完功能
查看>>
python解开压缩文件6位纯数字密码
查看>>
5620系列密码清除
查看>>
vncsever-centos&debian
查看>>
华为snmp模板
查看>>
kvm&xen挂载镜像文件
查看>>
华为路由器配置NAT使内网用户通过外网IP地址方式访问内网服务器示例
查看>>
virt命令
查看>>
15个保障服务器安全的方法:
查看>>
在VMware Workstation 中部署VCSA6.5
查看>>