056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用

本文知识点:数组的实际应用

程序开发中如何应用数组?

程序代码及其运行结果:

不同数据类型的数组的数组元素的默认值是?

int类型数组的数组元素默认值是:0

String类型数组的数组元素默认值是:null (表示空值元素,在后面的面向对象的学习中,我们会用到很多。其实可以给大家总结一点,即:所有对象数组【String类型的数组就是对象数组】在进行创建的时候,默认值都是null,就是空值)

float类型数组的数组元素默认值是:0.0

char类型数组的数组元素默认值是:空的?



public static void main(String[] args) {
//声明char类型数组ch
char [] ch ;
// 创建char数组ch
ch = new char[5];
// 初始化一个char数组b
char [] b = {'a','b','c','d','e'};
System.out.println("char类型数组ch的最后一个元素值是:" + ch[ch.length-1]);
}

因为数组元素是一系列连续的数据,所以我们经常用循环对数组元素进行赋值或者是进行输出及其他的一些处理。总之,数组和循环的关系非常密切,经常一起使用

循环为整型数组赋值——用for循环最合适

//使用循环为长度为5的整型数组intArray的数组元素赋值,值为1到5
for(int i = 0; i < 5;i++){
intArray[i] = i+1;
} //循环输出整型数组中的元素
System.out.println("整型数组intArray的元素为:");
for(int i = 0; i < 5; i++){
System.out.println(intArray[i] + " ")
}

程序代码及其运行结果:

程序中有一个隐含问题,就是数组下标问题,如果数组下标使用不当,就会引起数组下标越界

我们看一下,什么是数组下标越界。

数组下标越界的运行时异常

如果,我们明明知道,这个数组的数组长度是5,但是我们在for循环输出元素的过程中,在for循环的表达式2中,将i<5 不小心写成了 i<=5 (这是初学者经常犯的错误),会发生什么?

如下图,我们发现,数组元素正常打印输出了1 2 3 4 5。但是紧接着有个Exception,Exception在面向对象部分也会重点学习。其实之前我们遇到过Exception,就是要输入整型,但是输成字符串类型,就是非数值数据的时候,这个时候就会报错报异常,这个异常就是Exception



我们当前的这个Exception和之前输入非数字的Exception是一样的:它们都是在程序运行的过程中出现的,在编译过程中并没有出现问题。所以它们有一个共同的名字,叫做:运行时异常

解决异常步骤:

1、根据提示定位到出问题的代码行



2、发现代码问题(循环变量给的有问题,i的循环范围要修改)



3、修改代码之后,运行程序就没有异常报错了

056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用的更多相关文章

  1. # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结

    095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  2. 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)

    094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  3. 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)

    093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  4. 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)

    092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  5. 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)

    091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  6. 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包

    090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  7. 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包

    089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  8. 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现

    088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...

  9. 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点

    087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...

随机推荐

  1. css面试题汇总 (持续更新)

    前言:这篇随笔是为了准备后面的面试而整理的,网上各种面试题太多了,但是我感觉很多太偏了,而且实际开发过程中并不会遇到,因此这里我整理一些比较常用的,或者是相对比较重要的知识点,每个知识点都会由浅入深, ...

  2. Apache Pulsar 社区周报:08-08 ~ 08-14

    关于 Apache Pulsar Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息.存储.轻量化函数式计算为一体,采用计算与存储分离架构设计,支 ...

  3. 记录Unity的优化tip(不断更新)

    大概记录遇到的可以优化的点.1.Mesh.UploadMeshData:预先把网格送到GPU unity是这样的,它对一个网格,先把它搞到内存,然后在第一次渲染它时把它送到GPU.但送GPU经常是个瓶 ...

  4. 想在java接口自动化里用上Python的requests?这样做就可以了

    相信现在很多的公司自动化测试重点都在接口层,因为接口测试更加接近代码底层,相对于UI自动化,接口自动化有着开发更快.覆盖更全.回报率高等优点. 接口自动化代码实现不难,本质上就是代码模拟发送请求,然后 ...

  5. 从String中移除空白字符的多种方式!?

    字符串,是Java中最常用的一个数据类型了.我们在日常开发时候会经常使用字符串做很多的操作.比如字符串的拼接.截断.替换等. 这一篇文章,我们介绍一个比较常见又容易被忽略的一个操作,那就是移除字符串中 ...

  6. 【小白学PyTorch】7 最新版本torchvision.transforms常用API翻译与讲解

    文章来自:微信公众号[机器学习炼丹术].欢迎关注支持原创 也欢迎添加作者微信:cyx645016617. 参考目录: 目录 1 基本函数 1.1 Compose 1.2 RandomChoice 1. ...

  7. Jmeter 断言-检查点

    1. http请求/添加/断言/响应断言 2. 输入一个返回数据里没有的参数 3.果然报错了 断言的作用是用来查看接口文档里是否有自己想要的数据!

  8. Activiti7 获取资源信息及其查询流程历史信息

    获取资源信息 /** * 获取资源信息 * * @throws IOException */ @Test public void getProcessResources() throws IOExce ...

  9. get、post请求方式在jmeter中使用步骤

    jmeter:性能测试工具,压测 一.jmeter工具测试接口时使用步骤: 1.测试计划右键--添加--Threads(Users)--线程组(线程数就是并发数) 2.线程组右键--Sampler-- ...

  10. Java多线程1:进程与线程

    进程和线程 讲线程和进程前,先讲下同步(Synchronous).异步(Asynchronous).并发(Concurrency).并行(Parallelism). 同步(Synchronous)和异 ...