猿创征文 | Java知识【数组上篇】

举报
爱吃豆的土豆 发表于 2022/09/25 04:45:43 2022/09/25
【摘要】 目录 1,数组 概念: 2,数组的定义 格式1: 格式2: 详解: 注意点: 3,数组的静态初始化 完整格式: 格式详解: 注意点: 简化格式: 练习1: 练习2: 练习3: 4,地址值 1,数组 概念:   指的是一种容器,可以同来存储同种数据类型的多个值。 但是数组容器在存储数...

目录

1,数组

概念:

2,数组的定义

格式1:

格式2:

详解:

注意点:

3,数组的静态初始化

完整格式:

格式详解:

注意点:

简化格式:

练习1:

练习2:

练习3:

4,地址值


1,数组

概念:
 

指的是一种容器,可以同来存储同种数据类型的多个值。

但是数组容器在存储数据的时候,需要结合隐式转换考虑。

比如:

定义了一个int类型的数组。那么boolean。double类型的数据是不能存到这个数组中的,

但是byte类型,short类型,int类型的数据是可以存到这个数组里面的。

建议:

容器的类,和存储的数据类型保持一致。

举例:

整数1 2 3 4 56 就可以使用int类型的数组来存储。

小数1.1 1.2 1.3 1.4 就可以使用double类型的数组来存储。

字符串"aaa" "bbb" "ccc" 就可以使用String类型的数组来存储。

2,数组的定义

格式1:

数据类型 [] 数组名

比如:int [] array

格式2:

数据类型 数组名 []

比如: int array []

详解:

数据类型:限定了数组以后能存什么类型的数据。

方括号:表示现在定义的是一个数组。

数组名:就是一个名字而已,方便以后使用。

注意点:

方法括号跟数组名,谁写在前面,谁写在后面都是一样的。

平时习惯性使用第一种方式。

3,数组的静态初始化

完整格式:

数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,元素4...};

比如:

int[] arr = new int[]{11,22,33};

double[] arr = new double[]{1.1,1.2,1.3};

格式详解:

数据类型:限定了数组以后能存什么类型的数据。

方括号:表示现在定义的是一个数组。

数组名:其实就是名字而已,方便以后使用,在起名字的时候遵循小驼峰命名法。

arr namesArr

new:就是给数组在内存中开辟了一个空间。

数据类型:限定了数组以后能存什么类型的数据。

前面和后面的数据类型一定要保持一致。

int[] arr = new double[]{11,22,33};//错误写法

方括号:表示现在定义的是一个数组。

大括号:表示数组里面的元素。元素也就是存入到数组中的数据。

多个元素之间,一定要用逗号隔开。

注意点:

  • 等号前后的数据类型必须保持一致。

  • 数组一旦创建之后,长度不能发生变化。

简化格式:

数据类型[] 数组名 = {元素1,元素2,元素3,元素4...};

比如:

int[] array = {1,2,3,4,5};

double[] array = {1.1,1.2,1.3};

练习1:

定义数组存储5个学生的年龄。


  
  1. 1.给数组限定什么类型? int
  2. 2.利用静态初始化完成创建并添加元素
  3. int[] agesArr = new int[]{18,19,20,21,22};
  4. int[] agesArr = {18,19,20,21,22};

练习2:

定义数组存储3个学生的姓名。


  
  1. 1.给数组限定什么类型? String
  2. 2.利用静态初始化完成创建并添加元素
  3. String[] namesArr = new String[]{"zhangsan","lisi","wangwu"};
  4. String[] namesArr = {"zhangsan","lisi","wangwu"};

练习3:

定义数组存储4个学生的身高。


  
  1. 1.给数组限定什么类型? double
  2. 2.利用静态初始化完成创建并添加元素
  3. double[] heightsArr = new double[]{1.85,1.82,1.78,1.65};
  4. double[] heightsArr = {1.85,1.82,1.78,1.65};

4,地址值


  
  1. int[] arr = {1,2,3,4,5};
  2. System.out.println(arr);//[I@6d03e736
  3. double[] arr2 = {1.1,2.2,3.3};
  4. System.out.println(arr2);//[D@568db2f2

打印数组的时候,实际出现的是数组的地址值。

数组的地址值:就表示数组在内存中的位置。

以[I@6d03e736为例:

[ :表示现在打印的是一个数组。

I:表示现在打印的数组是int类型的。

@:仅仅是一个间隔符号而已。

6d03e736:就是数组在内存中真正的地址值。(十六进制的)

但是,我们习惯性会把[I@6d03e736这个整体称之为数组的地址值。

地址值对于我们来京,作用不大,简单了解。

5,数组元素访问

格式:

数组名[索引];

作用:

  • 获取数组中对应索引上的值

  • 修改数组中对应索引上的值

    一旦修改之后,原来的值就会被覆盖了。

代码实例:


  
  1. public class ArrDemo2 {
  2. /*
  3. 数组中元素访问的格式:
  4. 数组名[索引];
  5. 作用:
  6. 1.获取指定索引上对应的元素
  7. 2.修改指定索引上对应的元素
  8. */
  9. public static void main(String[] args) {
  10. int[] arr = {1,2,3,4,5};
  11. //需求1:获取arr数组中,3索引上的值
  12. int number = arr[3];
  13. System.out.println(number);
  14. System.out.println(arr[3]);
  15. //需求2:将arr数组中,3索引上的值修改为10
  16. arr[3] = 10;
  17. System.out.println("修改之后为:" + arr[3]);
  18. }
  19. }

文章来源: qianxu.blog.csdn.net,作者:爱吃豆的土豆,版权归原作者所有,如需转载,请联系作者。

原文链接:qianxu.blog.csdn.net/article/details/126804715

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。