Java数组「建议收藏」

Java数组「建议收藏」1、数组(Array):是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。1)数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括基

大家好,又见面了,我是你们的朋友全栈君。

1、数组(Array):是多个相同类型数据按一定顺序排列 的集合,并使用一个名字命名,并通过编号的方式 对这些数据进行统一管理。

1)数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括 基本数据类型和引用数据类型。

2)创建数组对象会在内存中开辟一整块连续的空间,而数组名中引用的是 这块连续空间的首地址。

3)数组的长度一旦确定,就不能修改。

按照元素的数据类型分:基本数据类型元素的数组、引用数据类型元素的数组(即对 象数组)

2、数组声明方式

type var[] 或 type[] var;

例如:

int a[]; int[] a1;

Java语言中声明数组时不能指定其长度(数组中元素的数), 例如: int a[5]; //非法

3、数据初始化

Java数组「建议收藏」

定义并用运算符new为之分配空间后,才可以引用数组中的每个元素;

每个数组都有一个属性length指明它的长度,例如:a.length 指明数组a的长 度(元素个数)

4、数组的默认初始值

Java数组「建议收藏」

5、内存简化结构

Java数组「建议收藏」

静态域:放一些被static关键字修饰的变量

常量池:String字符串

int[] arr1 = new int[4]; arr1[0] = 10; arr1[2] = 20; String[] arr2 = new String[3]; arr2[1] = “刘杰”; arr2 = new String[5];

Java数组「建议收藏」

上图中的String字符串不应该放在堆内,应该放在常量池中,这里我们只是大致模拟一下内存。

JVM的垃圾回收机制采用引用计数算法,比如String[] arr2 = new String[3];执行之后,这个arr2上次分配的内存没有被其他变量引用,那么它就会被当成垃圾回收掉。

6、二维数组初始化

Java数组「建议收藏」

Java数组「建议收藏」

int[][] arr1 = new int[4][]; arr1[1] = new int[]{1,2,3}; arr1[2] = new int[4]; arr1[2][1] = 30;

Java数组「建议收藏」

int[][] arr4 = new int[3][]; sysout(arr4[0]);//null
sysout(arr4[0][0]);//报错
arr4[0] = new int[3]; arr4[0][1] = 5; arr4[1] = new int[]{1,2};

Java数组「建议收藏」

 

 

 

7、Arrays工具类的一些方法

Java数组「建议收藏」

8、常见排序算法性能

Java数组「建议收藏」

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154407.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL——MySQL 图形化管理工具的介绍「建议收藏」

    MySQL——MySQL 图形化管理工具的介绍「建议收藏」文章目录MySQL——MySQL图形化管理工具的介绍1、MySQLWorkbench2、Navicat3、SQLyog4、DBeaver5、DataGripMySQL——MySQL图形化管理工具的介绍MySQL图形化管理工具极大地方便了数据库的操作与管理,常用的图形化管理工具有:MysQLWorkbench、phpMyAdmin、NavicatPreminum、MySQLDumper、SQLyog、dbeaver、MysQLODBcConnector、DataGrip。1、MySQL

    2022年6月30日
    31
  • 你还在认为 Java 是免费的吗[通俗易懂]

    你还在认为 Java 是免费的吗[通俗易懂]在收购了Sun公司的六年后,Oracle正在大规模的加大对违反其许可证的Java客户的审查力度。越来越多的Oracle客户和合作伙伴被拉里·埃里森的团队约谈,声称他们没有遵守Java的规矩。Oracle在2010年 收购了SunMicrosystems公司 ,知情人士透露现在它的许可证管理服务(LMS)正在到处追缴付款。该数据库巨头公司目前已经在全球

    2022年7月9日
    21
  • iOS 强大第三方资源库

    iOS 强大第三方资源库Github用法git-recipesGitrecipesinChinese.高质量的Git中文教程.lark怎样在Github上面贡献代码my-git有关git的学习资料gitignore非常赞有用的.gitignore模板集合(忽略上传的文件集合),包含了各种语言.完整App@open-source-ios-apps-iOS开源App集合,分:swift与Objec…

    2022年6月9日
    106
  • Java高并发读写文件[通俗易懂]

    Java高并发读写文件[通俗易懂]在实际的项目中我们经常会与遇到操作文件的情况,这是很常见的,但是我们在实际中用传统的I/O操作不能满足我们项目的需要并且对文件的写特别慢,操作比较麻烦。那么我们怎么样实现呢?最近在项目中我们遇到了高并发的事情,我是这样操作的。利用JavaNIO实现非阻塞式的读写,通过锁机制完成高并发下的文件的操作。publicvoidrun(){Filefile=newFile(“/

    2022年5月18日
    33
  • Linux常用命令大全

    Linux常用命令大全

    2021年10月15日
    29
  • JAVA8 中的flatmap

    JAVA8 中的flatmap构建对象classUser{privateStringaddr}将多个User集合中的addr按照;分割合并成一个字符串listList<User>uList=Lists.newArrayList();Useru1=newUser();u1.setAddr(“a1;a2;a3;a4;a5”);…

    2022年5月4日
    55

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号