Java创建数组的方法

2023-11-08

最近学Java,一点小心得,希望和大家分享一下,第一次写文章,写的不好希望大家谅解,当然我也会尽力写好这篇文章!

Java创建数组的方法大致有三种

说明:这里以int为数据类型,以arr为数组名来演示

一、声明并赋值

int[] arr = {1,2,4, …};
注意这里的花括号不是语句块,而且而且花括号后的分号也不能省,…不是元素意思是可以指定多个元素

二、声明数组名开辟空间并且赋值

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

三、声明数组时指定元素个数然后赋值

int[] arr1= new int[3];
注意:最大元素下标为2,并且所有的元素值均为0
赋值一般用for循环

四、在以上的基础上创建多维数组

  1. int[][] arr = {{1,2,3},{4,5,6},{7,8,9}}; //每个子数组元素个数不要求均相同
  2. int[][] arr = new int[m][n]; //其中n可以省略,在创建的时候可以指定
  3. int[][][] arr = new int[m][n][q]; //同样其中n、q可以省略

总结

  • 无论那种方法声明必须有 :数据类型 [ ] , 如:int[ ]
  • 创建多维数组时,new后面的第一个方括号中的元素数量总不能省略
  • “new 数据类型[]{}”创建数组时,其中花括号可以省去,但要在“[ ]”中填写数组的个数

各个创建数组的方法使用演示如下

方法一:

int[] arr2 = {10,20,30};
  for(int element:arr2) {
   System.out.print(element+"\n");//其中 "\n" 是换行
  }

输出结果:

10
20
30

方法二:

char[] arr4 ;  //char型输入时要用单引号(')引着!
  arr4 = new char[] {'a','b','c'};
  for(char element:arr4) {
   System.out.print(element + "  ");
  }

输出结果:

a   b   c 

方法三:

  int[] arr = new int[10];
     //换成i<10 或i<=9   因为 arr[10]不存在  强行调用会出错(溢出)!
  for(int i = 0;i<=9;i++) {
   arr[i]=i;
   System.out.print(arr[i]+"  ");
  }

输出结果:

0 1 2 3 4 5 6 7 8 9 

方法四

1.
int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
矩阵形式输出为:
1 2 3
4 5 6
7 8 9
1.
int[][] arr = new int[m][n];
在赋值时使用for循环
for(int i=0;i<m;i++){
	for(int j=0;j<n;j++){
		arr[i][j] = int;	
	}
}
若声明时省略n,赋值时须在内层循环中生成新一维数组
for(int i=0;i<m;i++){
	arr[i] = new int[数量];
}

二维以上的数组使用的不多,又因为使用方法同二维基本相同,所以在这里就不再演示了。

内容扩展

1. for each语句(增强性for循环)

用于对数组或实现Iterator接口的列表(ArrayList、LinkedList)集合(Set)等容器对象进行遍历。

格式:

for (数据类型 : emelent){
 	System.out.println(emelent);
}

应用代码:

int[] arr2 = {10,20,30};
  for(int element:arr2) {
   System.out.print(element+"\n");
  }

运行结果:

10
20
30

2.length属性 与 length()方法

二者区别:

  • length属性是针对Java中的数组来说的,要求数组的长度可以用其length属性
  • length()方法是针对字符串来说的,要求一个字符串的长度就要用Java的length()方法
  • Java中的size()方法是针对泛型集合(Set)或列表(List)说的,如果想看这个泛型容器中有多少元素,就调用此方法

应用代码:

for(int i=0;i<arr5.length;i++) {
   arr5[i]=i;
}

3.Arrays的toString方法

作用: 将数组的元素生成字符串,数组的各个元素使用方括号括着 [ ]
格式: Arrays.toString(数组名称)
注意: 此方法不能用于直接获得二维数组
应用代码:

int[] arr = {111,222,333};
System.out.println(Arrays.toString(arr));

运行结果:

[111, 222, 333]

希望以上对大家有帮助!


想了解作者更多,请移步我的个人网站,欢迎交流、留言~
极客技术空间:https://elltor.com/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java创建数组的方法 的相关文章

  • 如何将画廊意图中的“打开”更改为“完成”?

    我使用以下意图打开画廊来选择多个图像和视频 Intent intent new Intent intent setType image video intent putExtra Intent EXTRA ALLOW MULTIPLE tr
  • Java Runtime.getRuntime().freeMemory() 问题

    我搜索并看到了一些线程 但没有一个能够解决我遇到的具体问题 我正在尝试使用以下方式监视我的内存使用情况Runtime getRuntime freeMemory Runtime getRuntime maxMemory and Runtim
  • 通过SOCKS代理连接Kafka

    我有一个在 AWS 上运行的 Kafka 集群 我想用标准连接到集群卡夫卡控制台消费者从我的应用程序服务器 应用程序服务器可以通过 SOCKS 代理访问互联网 无需身份验证 如何告诉 Kafka 客户端通过代理进行连接 我尝试了很多事情 包
  • 使用 GWT 读取非常大的本地 XML 文件

    我正在使用 GWT 构建我的第一个 Java 应用程序 它必须从一个非常大的 XML 文件中读取数据 当我尝试发送对文件中信息的请求时遇到问题 并且我不太确定它是否与文件的大小或我的语义有关 在我的程序中 我有以下内容 static fin
  • Spring RestTemplate 使用 cookie 遵循重定向

    最近我遇到了一个问题 我需要做一个GET请求远程服务 我假设使用一个简单的 servlet 并且 RestTemplate 返回Too many redirects 经过一番调查 似乎对指定远程服务发出的第一个请求实际上只是一个 302 重
  • 当客户端关闭连接时,Spring StreamingResponseBody 请求线程未清理

    我在控制器中有一个端点 它返回一个StreamingResponseBody 用于向客户端发送文件 其代码大致如下 RestController RequestMapping value api public class Controlle
  • 使用 JUnit 时,有没有办法验证测试方法中是否调用了 try/catch 指令的 Catch 部分?

    例如 如果我想测试以下课程 public class SomeClass public void someMethod try Some code where comething could go wrong catch Exception
  • Spring Security SAML2 使用 G Suite 作为 Idp

    我正在尝试使用 Spring Security 5 3 3 RELEASE 来处理 Spring Boot 应用程序中的 SAML2 身份验证 Spring Boot 应用程序将成为 SP G Suite 将成为 IDP 在我的 Maven
  • 自动生成Flyway的迁移SQL

    当通过 Java 代码添加新模型 字段等时 JPA Hibernate 的自动模式生成是否可以生成新的 Flyway 迁移 捕获自动生成的 SQL 并将其直接保存到新的 Flyway 迁移中 以供审查 编辑 提交到项目存储库 这将很有用 预
  • 是否可以通过编程方式查找 logback 日志文件?

    自动附加日志文件以支持电子邮件会很有用 我可以以编程方式设置路径 如以编程方式设置 Logback Appender 路径 https stackoverflow com questions 3803184 setting logback
  • 在另一个模块中使用自定义 gradle 插件模块

    我正在开发一个自定义插件 我希望能够在稍后阶段将其部署到存储库 因此我为其创建了一个独立的模块 在对其进行任何正式的 TDD 之前 我想手动进行某些探索性测试 因此 我创建了一个使用给定插件的演示模块 到目前为止 我发现执行此操作的唯一方法
  • QuerySyntaxException:无法找到类

    我正在使用 hql 生成 JunctionManagementListDto 类的实际 Java 对象 但我最终在控制台上出现以下异常 org hibernate hql internal ast QuerySyntaxException
  • 使用布尔值进行冒泡排序以确定数组是否已排序

    我有以下用于冒泡排序的代码 但它根本不排序 如果我删除布尔值那么它工作正常 我知道 由于我的 a 0 小于所有其他元素 因此没有执行交换 任何人都可以帮助我解决这个问题 package com sample public class Bub
  • 是否可以使用 Java Guava 将函数应用于集合?

    我想使用 Guava 将函数应用于集合 地图等 基本上 我需要调整 a 的行和列的大小Table分别使所有行和列的大小相同 执行如下操作 Table
  • “无法实例化活动”错误

    我的一个 Android 应用程序拥有大约 100 000 个用户 每周大约 10 次 我会通过 Google 的市场工具向我报告以下异常情况 java lang RuntimeException Unable to instantiate
  • Resteasy 可以查看 JAX-RS 方法的参数类型吗?

    我们使用 Resteasy 3 0 9 作为 JAX RS Web 服务 最近切换到 3 0 19 我们开始看到很多RESTEASY002142 Multiple resource methods match request警告 例如 我们
  • Android:无法发送http post

    我一直在绞尽脑汁试图弄清楚如何在 Android 中发送 post 方法 这就是我的代码的样子 public class HomeActivity extends Activity implements OnClickListener pr
  • 使用按钮作为列表的渲染器

    我想使用一个更复杂的渲染器 其中包含列表的多个组件 更准确地说 类似于this https stackoverflow com questions 10840498 java swing 1 6 textinput like firefox
  • OpenCSV:将嵌套 Bean 映射到 CSV 文件

    我正在尝试将 bean 映射到 CSV 文件 但问题是我的 bean 具有其他嵌套 bean 作为属性 所发生的情况是 OpenCSV 遍历属性找到一个 bean 然后进入其中并映射该 bean 内的所有数据 如果找到另一个 bean 它就
  • 如何使用play框架上传多个文件?

    我在用play framework 2 1 2 使用java我正在创建视图来上传多个文件 我的代码在这里 form action routes upload up enctype gt multipart form data

随机推荐

  • vscode编译多文件的方法(C和C++通用)

    vscode编译多文件的方法 1 新建一个文件夹作为工程 我这里以struct为工程文件夹 其中 xixi c 和 xixi h 是该工程下list文件夹里的内容 xixi c include xixi h include
  • 简单注册界面

    register html div class form container div
  • webpack 转换 ES6高级语法 bable插件 module rules

    在webpack中只能处理一部分es6语法 一些高级的ES6或者ES7 webpack处理不了 借助第三方loader处理 会将结果打包到main js loader 通过Bable可以转换 webpack中运行 如下两套命令 去安装bab
  • Go分布式缓存 使用 Protobuf 通信(day7)

    Go分布式缓存 使用 Protobuf 通信 day7 为什么要使用 protobuf 使用 protobuf 进行节点间通信 编码报文 提高效率 代码约50行 1 为什么要使用 protobuf protobuf 即 Protocol B
  • c语言之输出

    c语言之输出 1 printf 功能 格式化输出函数 一般用于向标准输出设备按照规定的格式输出信息 头文件
  • java hasnextstring_Java – ListIterator和hasNext

    如果列表只有一个元素 那就更清楚了 让我们说 b hasNext 实际上会返回true 而next 会读取它 迭代将在此之后结束 说明 如果你打电话给Iterator lt Object gt 任何非空列表上的it list iterato
  • flutter 左右循环跑马灯,html实现

    import dart async import package flutter cupertino dart import package flutter material dart import package flutter html
  • js数组去重的方法

    Js数组去重的方法 1 ES6 Set方法去重 1 利用ES6 Set去重 let arr 1 2 3 25 4 1 2 3 function deduplicationBySet array return Array from new S
  • 半个小时内,用神经网络识别无人机航拍图像

    上一篇只要九分钟 用神经网络构建人脸比对模型的文章发出去之后 承蒙大家厚爱 得到了不少反馈 不少朋友希望能让我讲讲如何做图像识别 正好 TeguCV 的安装包里有一个测试数据集是我们用无人机航拍的车辆照片 就用它来做个教程吧 前情提要 Ma
  • Spring之启动过程源码解析

    Spring创建Bean 会经过一系列生命周期的流程 而Spring启动 其实就是为了后续创建Bean做一些准备工作 本篇以及下一篇文章都是来详细分析Spring的启动过程 目录 一 Spring启动的大致流程 二 Spring加载流程之A
  • 【高级阶段】第20章 数据的机器级表示

    目录 20 数据的机器级表示 20 1 补码讲解及内存实战 20 2 整型类型溢出解析 20 2 1 整型不同类型 20 2 2 整数型溢出解析 20 3 浮点数IEEE754标准解析及实战计算演示 20 4 浮点数精度丢失实战演示 20
  • java 获得当前时间的年月日8位字符串_Java获取当前时间年月日、时间格式化打印、字符串转日期...

    package com sysc simple import java text ParseException import java text SimpleDateFormat import java util Calendar impo
  • C++11:深入理解右值引用,move语义和完美转发

    C 11 深入理解右值引用 move语义和完美转发 标签 c 11右值引用完美转发move语义rvalue reference 2015 04 15 12 45 12667人阅读 评论 6 收藏 举报 分类 C 王者归来 16 版权声明 本
  • ohmyzsh主题安装与插件推荐

    前言 1 安装zsh sudo yum install zsh 2 切换到zsh sudo chsh s bin zsh 3 安装git sudo yum install git ohmyzsh官网 官网 https ohmyz sh 安装
  • Python获取酷得music并下载,获得无限听

    前言 大家早好 午好 晚好吖 欢迎光临本文章 环境使用 Python 3 8 Pycharm 模块使用 requests gt gt gt pip install requests re win R 输入cmd 输入安装命令 pip ins
  • python使用pandas指定列名写入excel

    import pandas as pd data dic 姓名 xl xh 年龄 22 18 身高 170 165 data pd DataFrame data dic print data data to excel l xlsx
  • Redis{常用命令操作,数据结构,持久化}

    今日内容 1 redis 1 概念 2 下载安装 3 命令操作 1 数据结构 4 持久化操作 5 使用Java客户端操作redis Redis 1 概念 redis是一款高性能的NOSQL系列的非关系型数据库 1 1 什么是NOSQL No
  • 黑苹果(haskintosh)关于本机,系统设置在睡眠唤醒后闪退

    问题 i712700f b660m ventura 13 1 当初是从12 6直接升级到 ventura 系统的 使用过程中出现过 The volume hash mismatch error 报错 忘记怎么处理了 再后来 偶然发现 关于本
  • 基于卷积神经网络的表情识别

    实验描述 使用卷积神经网络对数据集进行训练 实现实时对人的表情 笑脸与非笑脸进行简单识别 实验环境 Jupyter notebook 实验过程 数据集处理 部分代码 全部代码可以私信 准备图片数据 我们直接从网上获取到笑脸和非笑脸图片的数据
  • Java创建数组的方法

    最近学Java 一点小心得 希望和大家分享一下 第一次写文章 写的不好希望大家谅解 当然我也会尽力写好这篇文章 Java创建数组的方法大致有三种 说明 这里以int为数据类型 以arr为数组名来演示 一 声明并赋值 int arr 1 2