java——认识数组

1.什么是数组?
    定义:由若干类型相同的相关数据项按顺序储存在一起形成的一组同类型有序数据的集合(摘自《C语言大学使用教程(第3版)》)
    数组是属于数据结构中的一个内容。构成数组的每个数据项成为 元素。
    数组是数据结构中访问与存储速度最快的一种数据结构。可以直接通过下标进行定位到指定的数据位置。


     Java中数组在定义时必须要指定最低维的数组的长度。

      数组是存储指定数据类型和固定长度的数据容器。

数据类型[][] 数组名 = {{数据,...},...};的赋值方法例外


补充:Java有哪几种数据类型?
1.基本数据类型 (byte,short,int,long,float,double,char,boolean)(没有任何构造方法和属性,默认值为0)
2.引用类型(对象类型,类类型):类、接口、抽象类、数组(有构造方法和属性,默认值null)


2、数组在内存中的存储方式是怎样的?
数组名存储的是首地址
一维数组存储数据的是一个连续的存储空间

二维数组存储数据的是多个一维数组数组,是不连续的。


3、数组的定义
一维数组
数据类型 [] 数组名 = {值,...};
数据类型 [] 数组名 = new 数据类型[长度];

数据类型 [] 数组名 = new 数据类型[]{值,...};
数据类型 [] 数组名;

数组名 = new 数据类型[]{值,...};
数组名 = new 数据类型[长度];
二维数组
数据类型 [][] 数组名 = {{值,...},...};
数据类型 [][] 数组名 = new 数据类型[行][列];

数据类型 [][] 数组名 = new 数据类型[][]{{值,...},...};
数据类型 [][] 数组名;

数组名 = new 数据类型[][]{{值,...},...};
数组名 = new 数据类型[行][列];

        多维数组的定义以此类推。


4、数组的使用
数组是Java中的引用数据类型(类),数组只提供了一个唯一的属性length,
   length是用来获取数组中能存储的元素总数。


一维数组的使用:
                获取或设置某一个位置的数据:
                                   数组名[下标]
注:数组的下标起始值为0;即:int[] a=new int[3]中的元素分别是a[0]、a[1]、a[2] 
获取一维数组中能存储多少个元素?
数组名.length

二维数组的使用:
获取二维数组有多少行?
数组名.length
获取二维数组某一行有多少列?
数组名[行下标].length
获取或设置某一个位置的数据:

数组名[行下标][列下标]


5、数组的传递
        在java中,数组是值传递而非引用传递,所以从c语言转来学java的要注意,Java中只有按值传递,没有按引用传递!
         其实,当函数调用数组时,对数组的修改依然是有效的,这会导致大家认为数组是引用传递。
        但是,这是通过值传递实现的,这里不做详细解释。
混合动力汽车(HEV)模型的Simscape模型(Matlab代码、Simulink仿真实现)内容概要:本文档介绍了一个混合动力汽车(HEV)的Simscape模型,该模型通过Matlab代码和Simulink仿真工具实现,旨在对混合动力汽车的动力系统进行建模与仿真分析。模型涵盖了发动机、电机、电池、传动系统等关键部件,能够模拟车辆在不同工况下的能量流动与控制策略,适用于动力系统设计、能耗优化及控制算法验证等研究方向。文档还提及该资源属于一个涵盖多个科研领域的MATLAB仿真资源包,涉及电力系统、机器学习、路径规划、信号处理等多个技术方向,配套提供网盘下载链接,便于用户获取完整资源。; 适合人群:具备Matlab/Simulink使用基础的高校研究生、科研人员及从事新能源汽车系统仿真的工程技术人员。; 使用场景及目标:①开展混合动力汽车能量管理策略的研究与仿真验证;②学习基于Simscape的物理系统建模方法;③作为教学案例用于车辆工程或自动化相关课程的实践环节;④与其他优化算法(如智能优化、强化学习)结合,实现控制策略的优化设计。; 阅读建议:建议使用者先熟悉Matlab/Simulink及Simscape基础操作,结合文档中的模型结构逐步理解各模块功能,可在此基础上修改参数或替换控制算法以满足具体研究需求,同时推荐访问提供的网盘链接获取完整代码与示例文件以便深入学习与调试。
Java 中,**数组的长度是通过一个名为 `length` 的属性(不是方法)来获取的**。这是 Java 数组的一个内置属性。 --- ### ✅ 获取 Java 数组长度的方法 ```java 数组名.length ``` > ⚠️ 注意:`length` 是 **属性(field)**,不是方法,所以后面没有括号 `()`。 > 不要写成 `length()` —— 那是 `String` 类的 `length()` 方法! --- ### 🌰 示例代码 ```java public class ArrayLengthExample { public static void main(String[] args) { // 定义一个整型数组 int[] numbers = {1, 2, 3, 4, 5}; // 获取数组长度 System.out.println("数组长度为:" + numbers.length); // 字符串数组 String[] names = {"Alice", "Bob", "Charlie"}; System.out.println("字符串数组长度:" + names.length); // 二维数组:length 返回行数 int[][] matrix = { {1, 2, 3}, {4, 5, 6} }; System.out.println("二维数组行数:" + matrix.length); // 输出 2 System.out.println("第一行列数:" + matrix[0].length); // 输出 3 } } ``` #### 输出结果: ``` 数组长度为:5 字符串数组长度:3 二维数组行数:2 第一行列数:3 ``` --- ### 🔍 补充说明 | 数据类型 | 获取长度的方式 | 说明 | |--------|----------------|------| | 数组(int[], String[] 等) | `array.length` | 属性,无括号 | | 字符串(String) | `str.length()` | 方法,需要括号 | | 集合(List, Set 等) | `list.size()` | 调用 size() 方法 | --- ### ❌ 常见错误示例 ```java System.out.println(numbers.length()); // 编译错误! // 错误信息:cannot find symbol // 符号: method length() // 位置: 类型为 int[] 的变量 numbers ``` --- ### 💡 小技巧:遍历数组时使用 length ```java for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); } ``` 或者使用增强 for 循环(不需要显式使用 length): ```java for (int num : numbers) { System.out.println(num); } ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值