Java数组超详解

Java数组超详解一、前言前面我们学习了随机数的介绍和使用,那么这篇我们来学习java中数组的定义和使用,java的数组和c语言的十分类似。二、数组的定义数组定义的形式:格式1:数据类型[]数组名;如int[]arr;说明:定义了一个int类型的数组,数组名是arr格式2:数据类型数组名[];如intarr[];说明:定义了一个int类型的数组名是arr的数组…

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

目录

一、前言

二、数组的定义

数组定义的形式:

格式1:

格式2:

三、数组的初始化方式:

1.动态初始化

动态开辟的示意图:

2.静态初始化

四、索引访问数组

五、数组长度表示

六、遍历数组

方法一:

实例演示:​

 代码:

方法二:

实例演示:

代码:

七、数组的初始值

实例演示:

代码:


一、前言

前面我们学习了随机数的介绍和使用,那么这篇我们来学习java中数组的定义和使用,

java的数组和c语言的十分类似。

二、数组的定义

数组定义的形式:

格式1:

数据类型  [ ]  数组名 如int [ ]arr;

说明:定义了一个int类型的数组,数组名是arr

格式2:

数据类型 数组名[ ]如 int arr[ ]; 

说明:定义了一个int类型的数组名是arr的数组

相比之下:显然格式1更好些,更直观,格式2是我们在c语言的常使用的

三、数组的初始化方式:

1.动态初始化

所说的动态初始化其实就是只指定大小而不指定数组内容 。

如int[]arr=new int[5];其中new是开辟空间的,new左边的int[]arr时在栈区开辟,右边是

在堆区开辟的在Java中有且只有只用new开辟空间,用完之后不用手动释放,Java

之中的垃圾回收系统会自动判断开辟空间在使用完全且后续不再使用时会自动释放所

开辟的内存空间。栈区的使用完立马销毁。

动态开辟的示意图:

Java数组超详解

2.静态初始化

所谓静态初始化就是在创建变量的给定初始化值,由系统决定数组长度

格式 :数据类型 [ ] 数组名=new int arr[ ]{数据1,数据2…….,数据n};

如 int[ ]arr=new int arr[ ]{1,2,3,4,5};

也可以简化成:int[]arr={1,2,3,4,5};

四、索引访问数组

那我们是访问数组中的元素呢?答案是索引。

格式:数组名[索引]:索引和c语言中的下标是一样的)

索引是从0开始的,也就是说我们要访问第一个元素就是arr[0],以此类推。

五、数组长度表示

在Java中我们没有sizeof的,但是我们可以通过下列操作求出。

格式:数组名.length  如arr.length就求出了数组arr的长度。

六、遍历数组

所谓遍历数组就是拿到数组的每一元素

方法一:

for(类型 变量名:要变遍历的数组名){
    语句;
}

如:

for(int a:arr){
Systen.out.print(a);
}

实例演示:Java数组超详解

 代码:

package com;

public class 遍历数组 {
    public static void main(String[] args) {
        int []arr={1,2,3,4,5,6};//静态初始化
        for(int a:arr){
            System.out.print(" "+a);
        }
    }
}

方法二:

实例演示:

Java数组超详解

代码:

package com;

public class 遍历数组2 {
    public static void main(String[] args) {
        int []arr={1,2,3,4,5,6};
        for(int i=0;i<arr.length;i++){
            System.out.print(" "+arr[i]);
        }
    }
}

七、数组的初始值

类下方法外创建的变量,系统会给定一个初始值

实例演示:

Java数组超详解

代码:

package com;

public class Test {
        String S;
        int i;
        char c;
        double d;
        float f;
        boolean b;
        public static void main(String[] args) {
            Test t=new Test();//创建对象,调用该类的元素
            System.out.println(t.S);//null
            System.out.println(t.i);//0
            System.out.println(t.c);//空
            System.out.println(t.d);//0.0
            System.out.println(t.f);//0.0
            System.out.println(t.b);//false
        }
}

 上图是测试的初始值,注:必须变量在类下面方法外才会有初始值(也就是成员变量)

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

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

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


相关推荐

  • postman设置环境变量,实现一套接口根据选择的环境去请求不同的url[通俗易懂]

    postman设置环境变量,实现一套接口根据选择的环境去请求不同的url

    2022年2月8日
    47
  • 三大通信协议(二):IIC通信协议

    三大通信协议(二):IIC通信协议1.概念是什么?I²C(Inter-IntegratedCircuit),中文应该叫集成电路总线,它是一种串行通信总线,使用多主从架构,是由飞利浦公司在1980年代初设计的,方便了主板、嵌入式系统或手机与周边设备组件之间的通讯。由于其简单性,它被广泛用于微控制器与传感器阵列,显示器,IoT设备,EEPROM等之间的通信。优点仅需要两条总线即可通讯(大大的节约了IO口资源)最大主机数量:无限制。最大从机限制:理论127(一个主机多个从机,一对多,多对一,多对多)2.硬件连

    2022年5月5日
    121
  • 微信浏览器

    微信浏览器

    2021年10月23日
    46
  • 银行家算法c语言加注释,银行家算法C语言代码

    银行家算法c语言加注释,银行家算法C语言代码《银行家算法C语言代码》由会员分享,可在线阅读,更多相关《银行家算法C语言代码(10页珍藏版)》请在人人文库网上搜索。1、实验名称:银行家算法声明:杨秀龙学号:专业课:创新实验课111地图老师:霍林实验标题银行家算法实验的目的银行家算法如何避免死锁的更深层次理解设计思想银行家算法假定,根据进程的请求,在该进程的请求中已分配的资源上执行安全算法,如果可以满足其他进程的所有请求,则满足该进程的请求,否…

    2022年4月28日
    32
  • java -jar没有主清单属性_idea怎么导入jar

    java -jar没有主清单属性_idea怎么导入jar使用idea2018打包了一个springboot项目(打包为jar)启动是报错如下:错误原因打包后的jar文件中的MANIFEST.MF缺少项目启动项,即没有Main-Class和Start-Class如下:解决方案如下指定MANIFEST.MF路径项目打包前第一步file–&gt;projectstructure弹框后选中Atifacts—&gt…

    2025年9月13日
    14
  • flash 外国小游戏教程网站[通俗易懂]

    flash 外国小游戏教程网站[通俗易懂]http://www.tutorialized.com/tutorial/game-tutorial-part-1-character-movement/44240  相关的小游戏制作教程:有兴趣可以看看 http://www.emanueleferonato.com/2007/05/15/create-a-flash-racing-game-tutorial/

    2025年7月4日
    7

发表回复

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

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