java编程基础数组

java编程基础数组本章内容 一维数组 数组的定义和创建 数组可以看成是多个相同类型数据的组合 实现对这些数据的统一管理 数组中的每一个数据 数组的一个元素 element 数组中的元素可以是任何数据类型 包括基本数据类型和引用类型 数组中元素的个数 称为数组的长度 length JAVA 语言中声明数组时不能指定其长度 数组的其他基本概念 数组的定义和创建 数组类型 数组名 或 数组类型

大家好,我是讯享网,很高兴认识大家。



本章内容

一维数组

数组的定义和创建

数组可以看成是多个相同类型数据的组合,实现对这些数据的统一管理

 
讯享网 

数组中的每一个数据 — 数组的一个元素(element)

数组中的元素可以是任何数据类型,包括基本数据类型和引用类型

数组中元素的个数,称为数组的长度(length)

JAVA语言中声明数组时不能指定其长度

讯享网

数组的其他基本概念

 

数组的定义和创建

数组类型 数组名 [ ]

数组类型[ ] 数组名

示例

数组的定义和创建

数组名 = new 数据元素类型[ 元素个数 ]

示例

数组的内存模型

数组是存储多个相同类型变量的对象。数组的所有元素保存在堆内存中。
创建一个数组就是在堆中创建一个数组对象。
数组创建后立即拥有默认值。
索引从0开始。
连续分配

数组的初始化

在创建数组的同时就为数组元素分配空间并赋值

声明数组:和使用变量要先声明一样,先声明数组的类型和名称

讯享网

构造数组:声明之后,还不知道能存放多少个数据

 

构造/创建数组使用了关键字new,它是内存分配操作符,所谓创建数组,就是在内java编程基础数组存中给数组分配空间。

初始化数组:使用new创建数组后,所有元素其实已经被初始化,元素都是默认值,这种初始化就叫做”动态初始化“。

还有一种初始化方式是不使用new,而是在声明数组的同时就完成创建和初始化工作,这叫做”静态初始化“。

 

数组元素的访问

Java中,数组元素的下标从0开始

元素的下标可以是整型常量或整型表达式

数组的属性

数组的长度(length)必须>=0;

length为只读。

利用length遍历数组

 

练习

 

数组的异常 示例

 
 

多维数组的创建

Java中没有真正的多维数组,只有数组的数组


锯齿数组

Java中多维数组不一定是规则矩阵形式

多维数组的创建

 

多维数组的创建

 

多维数组的初始化

 

示例 MulArray.java

 

多维数组的内存模型

 

☻ 练习

 

多维数组的遍历

利用循环语句 和 数组下标

☻ 练习 Array_traversal.java

 

数组的复制 和排序

 

复制source数组中从下标srcPos开始的length个元素到目标数组dest,并从目标数组的下标为destPos的位置开始储存

 

☻ 练习 Array_copy.java

复制数组{1,2,3,4,5}中从下标0开始的
5个元素到目标数组{6,7,8,9,10,11,12,13,14,15},
并从目标数组的下标为0的位置开始储存

 

对数组arr_name中,从下标为fromIndex到toIndex的元素(不包括toIndex)进行升序排序

示例:ArraySort_sample.java

 

冒泡排序法(Bubble Sort)

冒泡排序法(Bubble Sort)

假设输入6个数为:9,8,5,4,2,0。


经过第一趟(共5次比较与交换)后,最大的数9已“沉底” 。

然后进行对余下的前面5个数第二趟比较,如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次两两比较,在第j趟比较中要进行n-j次两两比较。

 
 

本章重点总结

一维数组

 

多维数组

 

课后作业

  1. 编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。(知识点:数组定义和创建、一维数组初始化)[必做题]
  2. 将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制) [必做题]
  3. 给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序) [必做题]
  4. 有2个多维数组分别是 2 3 4 和 1 5 2 8 4 6 8 5 9 10 -3 2 7 -5 -18
    按照如下方式进行运算。生成一个2行4列的数组。此数组的第1行1列是21+35+42第1行2列是25+39+47 第2行1列是41+65+8*2 依次类推。(知识点:多维数组定义和创建、数组遍历、数组元素访问) [选作题]
  5. 输出一个double型二维数组(长度分别为5、4,值自己设定)的值。(知识点:数组定义和创建、多维数组初始化、数组遍历) [必做题]
  6. 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]
  7. 将一个数组中的元素逆序存放(知识点:数组遍历、数组元素访问) [选作题]
  8. 将一个数组中的重复元素保留一个其他的清零。(知识点:数组遍历、数组元素访问) [选作题]
  9. 给定一维数组{ -10,2,3,246,-100,0,5} ,计算出数组中的平均值、最大值、最小值。(知识点:数组遍历、数组元素访问) [选作题]

分割线


小讯
上一篇 2024-12-25 19:12
下一篇 2024-12-25 19:56

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/4789.html