JAVA数组基础-总结与简单示例_第1页
JAVA数组基础-总结与简单示例_第2页
JAVA数组基础-总结与简单示例_第3页
JAVA数组基础-总结与简单示例_第4页
JAVA数组基础-总结与简单示例_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、只为成功找方法,不为失败找借口!java基础学习总结数组一数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理。 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。 数组的元素可以是任何数据类型,包括基本类型和引用类型。 C和C+中的数组都可以分配在栈上面,而JAVA中的数组是只能分配在堆上面的,因为JAVA中的数组是引用类型。二一维数组一维数组的声明方式有2种: 格式一:数组元素类型 数组名 ; 即type var ; 格式二:数组元素类型 数组名; 即type var; 格式二声明数组的方法与C#上声明一维数组的方法一样。例如:int a

2、1 ; int a2; double b ; person p1; String s1 ;注意:JAVA语言中声明数组时不能指定其长度(数组中的元素个数) 如:int a5; 这样声明一维数组是非法的。三数组的模型 一维数组:一维数组就是一行,一行小格。 二维数组:二维数组就是一行加一列组成的一个平面分成的小格,有行有列。 三维数组:三维数组就是一个立方体。 人类对最多认识到三维空间。四数组对象的创建JAVA中使用关键字new创建数组对象。格式为:数组名 =new数组元素的类型数组元素的个数 例如:五元素为引用数据类型的数组注意:元素为引用数据类型的数组中的每一个元素都需要实例化。例如:cla

3、ss Date int year; int moth; int day; Date(int y; int m, int d) year=y;month=m;day=d;六数组的初始化 1.动态初始化数组定义与为数组元素分配空间和赋值的操作分开进行。例如: 1 public class Test 2 public static void main(String args ) 3 int a ; /定义数组,即声明一个int类型的数组a 4 a=new int3; /给数组元素分配内存空间。 5 a0=3; a1=9; a2=8; /给数组元素赋值。 6 Date days ; 7 days=ne

4、w Date3; 8 days0=new Date(1, 4, 2004); 9 days1=new Date(2, 4, 2004);10 days2=new Date(3, 4, 2004);11 12 13 14 class Date15 int year, month, day;16 Date(int y, int m, int d)17 year = y ;18 month = m ;19 day = d ;20 21 22 2.静态初始化在定义数组的同时就为数组元素分配空间并赋值。例如:puclic class Test public static void main(String

5、 args ) int a = 3, 9, 8; /在定义数组的同时给数组分配空间并赋值。 Date days = new Date(1, 4, 2004), new Date(2 ,4 ,2004), new Date(3 ,4, 2004) ; class Date int year, month, day; Date(int y, int m, int d) year = y ; month = m ; day = d ; 七数组元素的默认初始化 数组是引用类型,它的元素相当于类的成员变量,因此给数组分配内存空间后,每个元素也被按照成员变量的规则被隐式初始化。 1 public clas

6、s Test 2 public static void main(String args ) 3 int a = new int5; 4 Date days=new Date3; 5 System.out.println(a3); 6 System.out.println(days2); 7 8 9 class Date10 int year, month, day;11 Date(int y, int m, int d)12 year = y ;13 month = m ;14 day = d ;15 16 输出结果:System.out.println(a3); 打印出来的结果是:0。Sy

7、stem.out.println(days2); 打印出来的结果是:null(空)八数组元素的引用 定义并用运算符new为之分配内存空间后,才可以引用数组中的每个元素,数组元素的引用方式为:arrayNameindex,index为数组元素下标,可以是整型常量或整型表达式。如:a3, bi, c6*i。数组元素下标从0开始;长度为n的数组的合法下标取值范围为0n1。 每个数组都有一个属性length指明它的长度,例如:a.length的值为数组a的长度(元素个数)。九二维数组十、理解JAVA中的各个维度的数组模型简单实例:/*编写一个程序 * 0).使用输入值初始化数组 * 1).使用随机数初

8、始化数组 * 2).显示随机数初始化的数组 * 3).对所有元素求和 * 4).找出最大元素 * 5).找出最大元素的最小下标 * 6).随意打乱一个数组 * 7).移动元素,*/创建数组如下java.util.Scanner input = new java.util.Scanner(System.in);int intArray = new int 10;/*0)采用输入值初始化数组 * 要求用户输入10个数*/System.out.println(请输入 10 个整数:);for(int a = 0 ; a intArray.length; a+)intArraya = input.ne

9、xtInt();/*1)使用随机数初始化数组为10个元素的数组*/for(int i = 0; i intArray.length; i+)intArrayi = (int)(Math.random()*10);/使用随机数初始化数组intArray/*2)显示随机数初始化的数组*/for(int j = 0; j intArray.length; j+)System.out.print(intArrayj + t);/使用循环显示随机初始的数组System.out.println();/*3)对数组intArray的所有元素求和*/int count = 0; / 用于计算所有元素总和变量d

10、ouble average = 0; / 用于计算所有元素的平均数的变量for(int k = 0; k intArray.length; k+)count +=intArrayk;/计算数组intArray元素总和average = count / intArray.length;/平均值等于总和除以10(数组长度)System.out.println(所有元素的总和:t + count);System.out.println(所有元素的平均值:t + average);/*4)找出最大元素*/*分析,使用名为max的变量储存最大元素,将max的初值为intArray0;将每个元素与max进

11、行比较, * 如果该元素大于max,则更新max */int max = intArray0;for(int m = 1; m max)max = intArraym;System.out.println(数组中最大的元素是: + max);/*5)找出数组中最小的元素 * */int min = intArrayintArray.length - 1;for(int s = 0; s intArrays)min = intArrays;System.out.println(最小的元素是: + min);/*6)很多程序需要对数组进行任意从新排序,称为随意打乱(shuffling) * 完成此

12、功能,对每个元素intArrayi,随意产生一个下标index,然后 * 将intArrayi和intArrayindex互换*/for(int k = 0; k intArray.length; k+)int index = (int)(Math.random() * intArray.length); / 随机产生一个小标/以下代码实现互换int temp = intArrayk;intArrayk = intArrayindex;intArrayindex =intArrayk;System.out.println(随意打乱之后: + intArrayk);/*7)有时候,需要向左或向右移动元素。 * 这个例子就是将元素向左移动一个位置并且将第一个元素放在最后一个元素的位置*/int middle = intArray0;for(int i = 1; i intArray.length; i +)intArrayi - 1 = intArrayi; /

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论