前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >java一维数组、二维数组初始化

java一维数组、二维数组初始化

作者头像
全栈程序员站长
发布于 2022-09-01 08:32:02
发布于 2022-09-01 08:32:02
71800
代码可运行
举报
运行总次数:0
代码可运行

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

文章目录

一维数组与二维数组的声明

一维数组的声明:

  1. int[] a; //只声明数组a,没有初始化
  2. int[] a = new int[5]; //初始化为默认值,int型为0
  3. int[] a = {1,2,3,4,5}; //初始化为给定值
  4. int[] a = new int[] {1,2,3,4,5}; //初始化为给定值 int[] a = new int[5] {1,2,3,4,5}; //错误,如果提供了数组初始化操作,则不能定义维表达式
  5. int[] a; a = new int[5]; //正确,与(2)相同 int[] a; a = {1,2,3,4,5}; //错误,数据常量只能在初始化操作中使用,如(3)
  6. int a[]; a[0] = 1; a[1] = 2; //错误,因为数组没有初始化,不能直接赋值

二维数组的声明:

  1. int[][] a; //只声明数组a,没有初始化
  2. int[][] a = new int[2][3]; //初始化为默认值,int型为0
  3. int[][] a = { {1,2},{2,3},{3,4}}; //初始化为给定值 int[][] a = { {1,2},{2,3},{3,4,5}}; //正确,数组空间不是连续分配的,所以不要求每一维的空间大小相同
  4. int[][] a = new int[2][]; a[0] = new int[3]; // a[0]其实就是一个一维数组 a[1] = new int[4]; //每一维的大小可以不一样
  5. int[][] a = new int[][]{ {1,2},{2,3},{3,4,5}}; //正确,与(3)相同 int[] a = new int[5]{ {1,2},{2,3},{3,4,5}}; //错误,如果提供了数据初始化操作,则不能定义维度表达式 int[][] a = new int[2][]; a[0] = {1,2,3,4,5}; //错误,数组常量只能在初始化操作中使用
  6. int[][] a = new int[2][]; a[0][1] = 1; //错误,第二维没有初始化,不能赋值。出现java.lang.NullPointerException异常

总结

  1. 数组是对象类型数据,声明数组时注意new的使用 二维数组就是数组的数组,里面的数组大小不要求一样
  2. 不管是一维数组还是二维数组,在使用前(赋值,访问)必须初始化,可以使用new默认初始化,也可以用数组常量初始化
  3. 声明数组是,一定要考虑数组的最大容量,防止容量不够的现象。数组一旦被声明,它的容量就固定了,不容改变。如果想在运行程序时改变容量,就需要用到数组列表
  4. 数组有一个缺点,就是一旦声明,就不能改变容量,这个也是其使用率不高的原因,一般存储数据会使用数组列表或vector,这两种数据结构来存储数据

数组的初始化

  • 动态初始化:数组定义与为数组分配空间和赋值操作分开进行(静态初始化是在声明数组的同时进行辅助,动态初始化是在先声明数组,然后再对其进行赋值)
  • 静态初始化:在定义数组的同时就为数组元素分配空间并赋值(静态初始化是在声明数组的同时进行辅助,动态初始化是在先声明数组,然后再对其进行赋值)
  • 默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被默认初始化

静态初始化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int intArray[] = { 
   1,2,3,4};
String stringArray[] = { 
   "abc" ,"bcd", "cde" };
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//TestS.java(静态)
public class TestS{ 
   
    public static void main(String[] args) { 
   
		int[] a = { 
   1,2,3};
		Time times[] = { 
   new Time(15,53,23),new Time(15,52,24),new Time(15,51,25)};
		System.out.println("a[0] = " + a[0] + "\n" + "a[1] = " + a[1] + "\n"  + "a[2] = " + a[2]);
	}
}
 
class Time{ 
   
	int hour,min,sec;
	Time(int hour,int min,int sec){ 
   
		this.hour = hour;
		this.min = min;
		this.sec = sec;
	}
}

动态初始化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int intArray[];    intArray = new int[5];
String stringArray[];    stringArray = new String[3];  //为数组中每个元素开辟引用空间(32位)
stringArray[0] = new String("How");  //为第一个数组元素开辟引用空间(32位)
stringArray[1] = new String("are");  //为第二个数组元素开辟引用空间(32位)
stringArray[2] = new String("you");  //为第三个数组元素开辟引用空间(32位)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//TestD.java(动态)
public class TestD{ 
   
	public static void main(String[] args) { 
   
		int[] a;
		a = new int[3];
		a[0] = 0;
		a[1] = 1;
		a[2] = 2;
 
		Date days[];
		days = new Date[3];
		days[0] = new Date(2019,1,7);
		days[1] = new Date(2019,1,8);
		days[2] = new Date(2019,1,9);
 
		System.out.println("days[0] = "+days[0] + "\n" +"days[1] = "+days[1] + "\n"+"days[2] = "+days[2]);
	}
}
class Date{ 
   
    int year,month,day;
    Date(int year,int month,int day){ 
   
    	this.year = year;
    	this.month = month;
    	this.day = day;
    }	
}

默认初始化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//TestDefault(默认)
public class TestDefault{ 
   
	public static void main(String[] args) { 
   
		int[] a = new int[5];
		System.out.println(""+a[3]);
	}
}

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
Anaconda使用详解:从安装到高效管理Python环境
Anaconda是一款开源的Python和R语言的发行版本,其主要目的是为数据科学、机器学习、大数据处理和科学计算提供一个集成的开发环境。Anaconda集成了大量常用的数据科学库和工具,并附带了强大的环境管理和包管理功能,使得Python环境的配置和维护变得简单高效。本文将详细介绍Anaconda的安装、使用以及如何利用它来高效管理Python环境和包。
CoderJia
2024/10/18
9330
Anaconda使用详解:从安装到高效管理Python环境
使用 Miniconda + Mamba 构建高效的 AI 开发环境
在人工智能(AI)开发中,环境管理和依赖安装是一个关键问题。Anaconda 是一个广受欢迎的 Python 发行版,提供了丰富的 AI 相关库,但它体积庞大,安装和更新速度较慢。Miniconda + Mamba 组合提供了一个轻量、高效的替代方案。
IT蜗壳-Tango
2025/03/17
2490
conda创建虚拟环境怎么删除(anaconda离线创建虚拟环境)
在Anaconda中conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。所以对虚拟环境进行创建、删除等操作需要使用conda命令。
全栈程序员站长
2022/07/31
4.6K0
Anaconda入门详解
Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统Conda进行管理。超过1200万人使用Anaconda发行版本,并且Anaconda拥有超过1400个适用于Windows、Linux和MacOS的数据科学软件包。
py3study
2020/01/03
1.7K0
万字长文:深度全面了解Conda的各种骚操作,强烈建议收藏
本文重点分享Python的包管理工具和环境管理工具:conda。 未来的日子中,期待和大家一起成长,一起分享高质量原创文章
小码匠
2022/06/16
3.3K0
万字长文:深度全面了解Conda的各种骚操作,强烈建议收藏
windows10安装配置并使用Miniconda3
Conda 是包管理和环境管理工具,Anaconda 在 Conda 的 基础上预装了大量科学计算包
九转成圣
2025/04/08
4280
windows10安装配置并使用Miniconda3
可重复的生信分析系列二:Conda的介绍
可重复的生信分析一直是未来的趋势。如果实现可重复的生信分析,关键在于分析软件版本的控制,一致的环境设置还有良好的分析流程的记录。Conda可以说是版本控制和生信工具安装的一大神器。相信大家对它了解肯定不少,但是又该怎么样利用它,进行可重复的分析呢?今天继续讲第二部分 Conda的介绍。
生信菜鸟团
2020/03/30
1.7K0
Anaconda虚环境管理
当接触的东西越多越需要进行分类管理,同样的python环境也需要进行分类管理。anaconda不仅在数据科学有较高的建树,在python环境管理上也同样出色。
HsuHeinrich
2025/02/06
1170
Anaconda虚环境管理
Jupyter Notebook中配置多版本Python
最新 Anaconda 中,默认安装 Python 3.8.3,因为某些原因需要使用 Python 3.7
yiyun
2022/04/01
5K0
Jupyter Notebook中配置多版本Python
Miniconda安装和使用
Miniconda是什么? 要解释Miniconda是什么,先要弄清楚什么是Anaconda,它们之间的关系是什么? 而要知道Anaconda是什么,最先要明白的是搞清楚什么是Conda,参考:Conda简单教程。 一言以蔽之,Conda是Python中用于管理依赖包和虚拟环境的工具,Anaconda是一个带有Conda工具的软件包(附带了Conda、python和150多个科学软件包及其相关的包),而Miniconda是一个Anaconda的轻量级替代,默认只包含了Python和Conda。 也就是说,安装了Miniconda,就可以直接使用Python和Conda了。
编程随笔
2022/09/27
2.5K0
(数据科学学习手札81)conda+jupyter玩转数据科学环境搭建
  我们在使用Python进行数据分析时,很多时候都在解决环境搭建的问题,不同版本、依赖包等问题经常给数据科学工作流的搭建和运转带来各种各样令人头疼的问题,本文就将基于笔者自己摸索出的经验,以geopandas环境的搭建为例,教你使用conda+jupyter轻松搞定环境的搭建、管理与拓展。
Feffery
2020/04/01
1K0
conda常用命令整理
Conda是Anaconda中一个强大的包和环境管理工具,可以在Windows系统中的的Anaconda Prompt命令行使用,也可以在macOS或者Linux系统的终端窗口的命令行使用。
编程思维
2023/01/26
3.7K0
Anaconda使用总结
1、Anaconda简介2、Anaconda安装(Linux和Windows)3、Conda的包管理与环境管理
用户7886150
2021/01/26
9170
一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移
Conda是一种通用包管理系统,旨在构建和管理任何语言的任何类型的软件。通常与Anaconda (集成了更多软件包,https://www.anaconda.com/products/individual)和Miniconda (只包含基本功能软件包, https://conda.io/miniconda.html)一起分发。
生信宝典
2021/12/01
3.1K0
一文掌握Conda软件安装:虚拟环境、软件通道、加速solving、跨服务器迁移
JupyterLab 实战
Project Jupyter[1] (/ˈdʒuːpɪtər/) 是一个旨在开发跨多种编程语言的交互式计算的开源软件、开放标准和服务的项目。
AlphaHinex
2024/04/09
5010
JupyterLab 实战
python的环境,你再也不用愁
conda是一个包,依赖和环境管理工具,适用于多种语言,如: Python, R, Scala, Java, Javascript, C/ C++, FORTRAN。
用户10002156
2022/12/21
6160
【Anaconda实用教程】Anaconda使用修改.condarc文件和常用命令、及解决没有.condarc的情况
.condarc保存了anaconda的配置信息,该文件存储在C:\Users\xxxx.conda\ 路径中,在如下代码中:
程序员洲洲
2024/06/07
4.2K0
【Anaconda实用教程】Anaconda使用修改.condarc文件和常用命令、及解决没有.condarc的情况
阅读量过万的conda使用总结,跨越一年的更新
conda分为anaconda和miniconda。anaconda是包含一些常用包的版本(这里的常用不代表你常用 微笑.jpg),miniconda则是精简版,需要啥装啥,所以推荐使用miniconda。
生信技能树
2019/10/09
2K0
阅读量过万的conda使用总结,跨越一年的更新
conda虚拟环境
原文链接:https://blog.csdn.net/weixin_43593330/article/details/93378987
TeeyoHuang
2019/11/14
1.4K0
4步为Jupyter Notebook添加Conda环境
打开你的Jupyter Notebook,查看界面是否已经可以选择firstEnv作为新的环境。
王诗翔呀
2022/03/30
1.5K0
4步为Jupyter Notebook添加Conda环境
推荐阅读
相关推荐
Anaconda使用详解:从安装到高效管理Python环境
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档