Java创建数组的3种方式代码举例

 更新时间:2024年01月19日 08:22:16   作者:xiexie0705  
数组是相同类型数据的有序集合,数组描述的是若干个相同类型的数据按照一定的先后次序排列组合而成,其中每一个数据称为数组的元素,可以通过下标进行访问,这篇文章主要给大家介绍了关于Java创建数组的3种方式,需要的朋友可以参考下

一、动态初始化,仅指定数组长度来创建。

这种一般用的比较多。

数组类型 [ ]  数组名称  =  new 数组类型 [ 数组长度 ] 

String[] arr = new String[2];

// 指定长度后,则数组的元素就根据数据类型被被赋予了初始值。
// int 型默认值为0;boolean 默认为 false ; 引用数据类型 默认为 null 。

// arr[0] = "a";
// arr[1] = "b";
String string = Arrays.toString(arr);
System.out.println("arr = " + string);

//指定长度后手动赋值0 ,1下标,输出:arr = [a, b]
//未赋值输出:arr = [null, null]

二、静态初始化,指定每个元素的值来创建

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

//或者直接一行
int[] array = new int[]{1,2,3};
        
//直接简写,数组元素之间用“,” 分开
int[] data = {1,2,3};

三、匿名数组方式,指定每个元素的值,无需给数组命名。

String string = Arrays.toString(new int[]{1, 2, 3});
System.out.println("string = " + string);

//输出
string = [1, 2, 3]

补充:数组的常用操作

在实际开发中,数组的使用非常广泛,这里给大家介绍几种最常用的操作:

1) 求数组中的最大值和最小值

求最大值和最小值的基本思路是一样的,取出数组中的第一个元素,依次与数组中的其他元素进行对比,找到目标,具体实现代码如下所示。

public class Test {
   public static void main(String[] args) {
      int[] array = {73,80,62,93,96,87};
      int max = array[0];
      for(int i = 1;i < array.length;i++){
         if(array[i] > max){
            max = array[i];
         }
      }
      System.out.println("最大值是"+max);
      int min = array[0];
      for(int i = 1;i < array.length;i++){
         if(array[i] < min){
            min = array[i];
         }
      }
      System.out.println("最小值是"+min);
   }
}

运行结果为:

最大值是96
最小值是62

2) 在数组的指定位置插入一个数据

假设现有数组 int[] array = {96,93,87,80,73,62},要求将 83 插入到下标为3的位置。

初始化数组长度为 6,现要求插入一个元素。因为数组一旦创建长度是不可改变的,所以首先需要创建一个长度为7的新数组来存储插入之后的所有元素。然后将原数组的值复制到新数组中,同时指定位置之后的元素依次向后移动一位,最后将目标元素保存到指定位置即可,如下图所示。

图 7 数组中插入数据

具体实现代码如下所示。

import java.util.Arrays;
public class Test {
   public static void main(String[] args) {
      //在数组下标为3的位置添加83
      int[] array = {96,93,87,80,73,62};
      int score = 83;
      int[] array2 = new int[array.length+1];
      for(int i = 0; i < 3; i++){
         array2[i] = array[i];
      }
      array2[3] = 83;
      for(int i = 4;i<array2.length;i++){
         array2[i] = array[i-1];
      }
      //Arrays工具类的toString方法可以将数组的元素依次取出拼接成一个字符串
      System.out.println("添加新元素之前的数组:"+Arrays.toString(array));
      System.out.println("添加新元素之后的数组:"+Arrays.toString(array2));
   }
}

运行结果如下所示。

添加新元素之前的数组:[96,93,87,80,73,62]
添加新元素之后的数组:[96,93,87,83,80,73,62]

总结 

到此这篇关于Java创建数组的3种方式的文章就介绍到这了,更多相关Java创建数组内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用redis的increment()方法实现计数器功能案例

    使用redis的increment()方法实现计数器功能案例

    这篇文章主要介绍了使用redis的increment()方法实现计数器功能案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • springboot+vue实现阿里云oss大文件分片上传的示例代码

    springboot+vue实现阿里云oss大文件分片上传的示例代码

    阿里云推出了直传,本文主要介绍了springboot+vue实现阿里云oss大文件分片上传的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-06-06
  • 图解Java经典算法冒泡选择插入希尔排序的原理与实现

    图解Java经典算法冒泡选择插入希尔排序的原理与实现

    冒泡排序是一种简单的排序算法,它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序
    2022-09-09
  • Mybatis之collection标签中javaType和ofType属性的区别说明

    Mybatis之collection标签中javaType和ofType属性的区别说明

    这篇文章主要介绍了Mybatis之collection标签中javaType和ofType属性的区别说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • 如何通过ServletInputStream读取http请求传入的数据

    如何通过ServletInputStream读取http请求传入的数据

    这篇文章主要介绍了如何通过ServletInputStream读取http请求传入的数据,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Java面向对象编程中final关键字的使用方法详解

    Java面向对象编程中final关键字的使用方法详解

    这篇文章主要介绍了Java面向对象编程中final关键字的使用方法详解,包括对内部匿名类无法访问外面的非 final 的变量问题的解读,需要的朋友可以参考下
    2016-06-06
  • Java8 Stream流根据多个字段去重

    Java8 Stream流根据多个字段去重

    这篇文章主要介绍了Java8 Stream流根据多个字段去重,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • MyBatis中association的基本使用方法

    MyBatis中association的基本使用方法

    在项目中某些实体类之间肯定有关键关系,比如一对一,一对多等,在hibernate中用one to one和one to many,而mybatis中就用association和collection,下面这篇文章主要给大家介绍了关于MyBatis中association基本使用方法的相关资料,需要的朋友可以参考下
    2022-09-09
  • 详解springboot如何更新json串里面的内容

    详解springboot如何更新json串里面的内容

    这篇文章主要为大家介绍了springboot 如何更新json串里面的内容,文中有详细的解决方案供大家参考,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-10-10
  • ZooKeeper开发实际应用案例实战

    ZooKeeper开发实际应用案例实战

    这篇文章主要为大家介绍了ZooKeeper开发的实际应用案例实战,文中附含详细开发应用源码,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2022-01-01

最新评论