Java数组看这篇就够了

目录
  • 一、前言
  • 二、数组的定义数组定义的形式:
  • 三、数组的初始化方式:
    • 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

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

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

动态开辟的示意图:

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);
}

实例演示:

代码:

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);
        }
    }
}

方法二:实例演示:

代码:

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]);
        }
    }
}

七、数组的初始值

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

实例演示:

代码:

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
        }
}

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

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • java基础-数组扩容详解

    目录 数组与链表的比较: ArrayList: LinkedList: 总结 数组与链表的比较: 数组通过下标访问的话是O(1) 数组一旦声明 长度就是固定的 数组的数据是物理逻辑均连续的 链表增删要快一些, 数组遍历快一些 长度一定的话, 数组的存储空间比链表要小 ArrayList: ArrayList是List接口的实现类,它是支持根据需要而动态增长的数组:java中标准数组是定长的,在数组被创建之后,它们不能被加长或缩短.这就意味着在创建数组时需要知道数组的所需长度,但有时我们需要动态程

  • Java中数组的使用与注意事项详解(推荐)

    目录 一.初始数组 二.数组的创建 三.使用数组时的注意事项 (1)初始化问题 (2)数组长度的使用 (3)有关数组长度的问题 (4)对于数组的访问 (5)数组的遍历 三.数组的类型 1.每个部分数据区的概念: 2.数组在JVM当中的使用情况 3.引用类型的注意事项 四.关于引用类型的返回值 总结 一.初始数组 数组的概念:数组就是一个用来存储相同类型数据的一个容器. 为什么要使用数组? 当我们要存储大量相同类型的时候,通过配合循环来使用就会大量减少代码复杂程度 数组的特点: (1)数组是一种引

  • Java 数组内置函数toArray详解

    java.util.List中的toArray函数 java.util.List<E> @NotNull public abstract <T> T[] toArray(@NotNull T[] a) Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned

  • Java数组的运用详解

    目录 一,数组的含义: 二,数组的创建 1,动态初始化 2,静态初始化 三,数组遍历 四,Arrays.deepToString()与Arrays.toString()的区别 五,Java中Arrays类的常用方法 1,数字排序 2,字符串排序,先大写后小写 3,严格按字母表顺序排序,也就是忽略大小写排序 CASE_INSENSITIVE_ORDER 4,反向排序, Collections.reverseOrder() 5,忽略大小写反向排序 (先忽略大小写,再反向排序) 6,选择数组指定位置进

  • Java数组看这篇就够了

    目录 一.前言 二.数组的定义数组定义的形式: 三.数组的初始化方式: 1.动态初始化 2.静态初始化 四.索引访问数组 五.数组长度表示 六.遍历数组 方法一: 方法二:实例演示: 七.数组的初始值 总结 一.前言 前面我们学习了随机数的介绍和使用,那么这篇我们来学习java中数组的定义和使用, java的数组和c语言的十分类似. 二.数组的定义数组定义的形式: 格式1: 数据类型 [ ] 数组名 :如int [ ]arr; 说明:定义了一个int类型的数组,数组名是arr 格式2: 数据类型

  • 详解java调用python的几种用法(看这篇就够了)

    java调用python的几种用法如下: 在java类中直接执行python语句 在java类中直接调用本地python脚本 使用Runtime.getRuntime()执行python脚本文件(推荐) 调用python脚本中的函数 准备工作: 创建maven工程,结构如下: 到官网https://www.jython.org/download.html下载Jython的jar包或者在maven的pom.xml文件中加入如下代码: <dependency> <groupId>org

  • 快速入门ASP.NET Core看这篇就够了

    本来这篇只是想简单介绍下ASP.NET Core MVC项目的(毕竟要照顾到很多新手朋友),但是转念一想不如来点猛的(考虑到急性子的朋友),让你通过本文的学习就能快速的入门ASP.NET Core.既然是快速入门所以过多过深的内容我这里就一笔带过了!然后在后面的一些列文章中再慢慢的对其中的概念进行阐述. .NET Core是什么 很多朋友看到.NET Core就认为是ASP.NET Core,其实这是有误区的,因为.NET Core 是开放源代码的通用开发平台 (是一个"平台"),基于

  • java多线程从入门到精通看这篇就够了

    目录 一.认识线程及线程的创建 1.线程的概念 2.线程的特性 3.线程的创建方式 <1>继承Thread类 <2>实现Runnable接口 <3>实现Callable接口 二.线程的常用方法 1.构造方法和属性的获取方法 2.常用方法 <1>run()和start() <2>interrupt()方法 <3>join方法 <4>获取当前线程的引用currentThread();方法 <5>休眠当前线程slee

  • 学习Java HashMap,看这篇就够了

    HashMap 是一个散列表,它存储的内容是键值对(key-value)映射. HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步. HashMap 是无序的,即不会记录插入的顺序. HashMap 继承于AbstractMap,实现了 Map.Cloneable.java.io.Serializable 接口. HashMap 的 key 与 value 类型可以相同也可以不同,可以是字符串(Str

  • java8中的lambda表达式,看这篇绝对够

    目录 Lambda表达式 特性 一.lambda表达式介绍 1.1 lambda表达式结构 1.2 常见的Lambda表达式 1.3 基本语法 1.4 类型检查 1.5 类型推断 1.6 变量作用域 1.7 方法引用 1.8 构造器引用 二.在何处使用lambda表达式 2.1 函数式接口介绍 2.2 常见的函数式接口 2.3 常见的Lambda和已有的实现 2.4 针对装箱拆箱的优化 2.5 复合Lambda函数 Lambda表达式 Lambda是简洁的标识可传递匿名函数的一种方式.“互动”事

  • 入门Java线程基础一篇就够了

    目录 一.线程初步认识 1.什么是线程 2.Java本身就是多线程 3.为什么要使用多线程 4.线程的优先级 5.线程的状态 6.Daemon线程 二.线程启动和终止 1.构造线程 2.什么是线程中断 3.suspend().resume()和stop() 4.正确的终止线程 总结: 简介: 线程是操作系统调度的最小单元,在多核环境中,多个线程能同时执行,如果运用得当,能显著的提升程序的性能. 一.线程初步认识 1.什么是线程 操作系统运行一个程序会为其启动一个进程.例如,启动一个Java程序会

  • Pycharm新手教程(只需要看这篇就够了)

    pycharm是一款高效的python IDE工具,它非常强大,且可以跨平台,是新手首选工具!下面我给第一次使用这款软件的朋友做一个简单的使用教程,希望能给你带来帮助! 目前pycharm一共有两个版本,Professional(专业版本)」和「社区版」,专业版功能最强大,主要是为 Python 和 web 开发者而准备,是需要付费的.社区版是专业版的阉割版,比较轻量级,主要是为 Python 和数据专家而准备的.一般我们做开发,下载专业版本比较合适. 一.常用功能介绍 1.更换 Python

  • Springboot 整合RabbitMq(用心看完这一篇就够了)

    该篇文章内容较多,包括有rabbitMq相关的一些简单理论介绍,provider消息推送实例,consumer消息消费实例,Direct.Topic.Fanout的使用,消息回调.手动确认等. (但是关于rabbitMq的安装,就不介绍了) 在安装完rabbitMq后,输入http://ip:15672/ ,是可以看到一个简单后台管理界面的. 在这个界面里面我们可以做些什么? 可以手动创建虚拟host,创建用户,分配权限,创建交换机,创建队列等等,还有查看队列消息,消费效率,推送效率等等. 以上

  • Java-lambda表达式入门看这一篇就够了

    概述 Lambda表达式,也可称为闭包,是JDK8的新特性.Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中),可以使代码变的更加简洁紧凑.Lambda表达式是一个可传递的代码块,可以在以后执行一次或多次. 名字起源是以前还没有计算机时,逻辑学家Alonzo Church想要形式化的表示能有效计算的数学函数,使用了希腊字母lambda( λ \lambda λ)来标记参数,从那以后,带参数变量的表达式就被称为lambda表达式. lambda表达式本质是一个匿名函数,比如以下

随机推荐