java基础学习总结——数组

一.数组的基本概念

  • 数组可以看成是多个相同类型数据组合,对这些数据的统一管理。
  • 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。
  • 数组的元素可以是任何数据类型,包括基本类型和引用类型。
  • C和C++中的数组都可以分配在栈上面,而JAVA中的数组是只能分配在堆上面的,因为JAVA中的数组是引用类型。

二.一维数组

一维数组的声明方式有2种:

  • 格式一:数组元素类型  数组名[ ];  即type var[ ];
  • 格式二:数组元素类型[ ] 数组名; 即type[ ] var;
  • 格式二声明数组的方法与C#上声明一维数组的方法一样。

例如:int a1[ ];   int[ ] a2;

double b[ ];

person[ ] p1;  String s1[ ];

注意:JAVA语言中声明数组时不能指定其长度(数组中的元素个数)

如:int a[5]; 这样声明一维数组是非法的。

三.数组的模型

  • 一维数组:一维数组就是一行,一行小格。
  • 二维数组:二维数组就是一行加一列组成的一个平面分成的小格,有行有列。
  • 三维数组:三维数组就是一个立方体。
  • 人类对最多认识到三维空间。

四.数组对象的创建

  JAVA中使用关键字new创建数组对象。

  格式为:数组名 = new 数组元素的类型[数组元素的个数]

例如:

五.元素为引用数据类型的数组

  注意:元素为引用数据类型的数组中的每一个元素都需要实例化。

例如:

class 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 int[3];  //给数组元素分配内存空间。
 5     a[0]=3; a[1]=9; a[2]=8;  //给数组元素赋值。
 6     Date days[ ];
 7     days=new Date[3];
 8     days[0]=new Date(1, 4, 2004);
 9     days[1]=new Date(2, 4, 2004);
10     days[2]=new Date(3, 4, 2004);
11     }
12 }
13
14 class Date{
15     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 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 class Test{
     2         public static void main(String args[ ]){
     3             int a[ ] = new int[5];
     4             Date[ ] days=new Date[3];
     5             System.out.println(a[3]);
     6             System.out.println(days[2]);
     7     }
     8 }
     9 class Date{
    10     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(a[3]);    打印出来的结果是:0。

  System.out.println(days[2]);  打印出来的结果是:null(空)

八.数组元素的引用

定义并用运算符new为之分配内存空间后,才可以引用数组中的每个元素,数组元素的引用方式为:arrayName[index], index为数组元素下标,可以是整型常量或整型表达式。如:a[3], b[i], c[6*i]

  数组元素下标从0开始;长度为n的数组的合法下标取值范围为 n—1

每个数组都有一个属性length指明它的长度,例如:a.length的值为数组a的长度(元素个数)

九.二维数组

  

  

十、理解JAVA中的各个维度的数组模型

  

时间: 2024-10-13 22:44:19

java基础学习总结——数组的相关文章

Java基础学习(二)—数组

一.数组的概念      定义: 数组是存储同一种数据类型的多个元素的集合.      数组既可以存储基本数据类型,也可以存储引用数据类型.      格式:           格式1: 数据类型[] 数组名;           格式2: 数据类型 数组名[];      这样定义完了,但是数组中是没有元素的,我们必须对数组进行初始化.   二.数组的初始化      Java数组必须先初始化,然后才能使用.所谓的初始化就是为数组的元素分配内存空间,并为每个数组元素赋值.      动态初始

java基础学习之数组

1.什么是数组 数组为相同数据类型的元素组成的集合,数组元素按线性顺序排列. 在表示数组的每个元素时,使用数组的下标表示数组的位置,其中下标为0的即为数组的第一个元素.最后一个数组的元素下标即为数组长度减一. 声明数组的语法为: 数据类型[] 数组名 = new 数据类型 [ 大小 ]:例如: String[] str = new String[10]; 在定义了数组之后,数组是有默认的初始化值的,当我们没有为其指明初始化值的时候,int默认初始化值为0:String默认初始化值为null,do

Java基础学习——数组初识(1)

Java基础学习--数组初识(1) 1什么是数组 Java中常见的一种数据结构就是数组,数组可以分为一维数组.二维数组和多维数组. 数组是由一组相同的变量组成的数据类型,数组中每个元素具有相同的数据类型,数组中的每个元素都可以用一个统一的数组名和下标来确定. 2 数组的使用 数组的一般使用步骤: 声明数组 分配内存给该数组 下面是一维数组为例: 数据类型  数组名 []: 数组名 = new 数据类型 [数据个数]: 2.1一维数组的声明与赋值 1.数组的声明 int  num [];    

Java基础学习191221(可变参数,数组,Array类,稀疏数组,继承重写多态,抽象类,接口)

Java基础学习 可变参数 在方法声明中,在指定参数类型后加一个省略号(...). 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数.任何普通参数都必须在它之前声明. public class printMax { public static void main(String[] args) { printMax(1,5,8,78,415,15); } public static void printMax( double... numbers){ if (numbers.length

JAVA基础学习笔记(2)

看了几天的视频了,都没时间来写下学习笔记,今天来写下第二次的学习笔记,前几天看的给忘记了,就写最新看到的吧 主要内容:1.类的变量与函数(方法) 2.对象的存储方式 3.新建一个对象及对象的赋值与调用 4.空对象 5.匿名对象 1.类的变量与函数(方法) class Dog      //类名 { String name;  //变量的声明 int age; String color; void bark()   //方法的定义(返回值为空,不带参数) { System.out.println(

java基础学习笔记day01

java基础学习笔记day01 1.软件开发: 软件:按照特定顺序组织的计算机数据和指令的集合 开发:软件的制作过程 软件开发:借助开发工具和计算机语言制作软件 2.java概述: java之父:詹姆斯·高斯林 JDK:java开发环境 jre:java运行环境 JVM:java虚拟机 java跨平台是因为,JVM能在不同的平台运行,JVM是跨平台的 JavaSE:标准版 JavaME:手机端,物联网 JavaEE:企业版,互联网项目 3.java语言特点: 简单性 解释性 面向对象 高性能 分

java 基础学习

a+b: 1 import java.util.Scanner; 2 public class Main { 3 4 public static void main(String args[]){ 5 Scanner cin=new Scanner(System.in); 6 int a,b; 7 a=cin.nextInt(); 8 b=cin.nextInt(); 9 System.out.println(a+b); 10 11 } 12 } 字符串.字符输入: 1 import java.

Java基础学习笔记

File 的高级获取功能 String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录 示例 import java.io.File; class FileDemo9 { public static void  main(String[] args) { //获取E:下所有目录或者文件名称 File file=new  File("E:\\");//1.构建文件对象 String[]  fileNames=file.list();//2.获取E

黑马程序员--java基础学习笔记5

黑马程序员--java基础学习笔记6 一.笔记内容概述: 数组-第二种定义格式.数组-常见操作-遍历-最值-选择排序-冒泡排序-排序位置置换代码提取.数组-排序的性能问题.数组-常见功能-查找-折半查找.进制转换-查表法-整合. 二.常用内容介绍: 1.数组初始化的三种方式: int[] arr = new int[3]; int[] arr = new int[]{1,2,3}; int[] arr = {1,2,3}; 2.查表法: 如果数据中出现了对应关系,而且对应关系的一方是有序的数字编