`

Java数组初始化

阅读更多

1.Java 数组初始化的两种方法:    

 

        静态初始化: 程序员在初始化数组时为数组每个元素赋值;

        动态初始化: 数组初始化时,程序员只指定数组的长度,由系统为每个元素赋初值。

public class ArrayInit {
	public static void main(String[] args) {
		
		//静态初始化数组:方法一
		String cats[] = new String[] {
				"Tom","Sam","Mimi"
		};
		
		//静态初始化数组:方法二
		String dogs[] = {"Jimmy","Gougou","Doggy"};
		
		//动态初始化数据
		String books[] = new String[2];
		books[0] = "Thinking in Java";
		books[1] = "Effective Java";
		
		System.out.println(cats.length);
		System.out.println(dogs.length);
		System.out.println(books.length);
	}
}

        Java数组是一种引用数据类型。数组变量并不是数组本身,而是指向堆内存中存放的数组对象。因此,可以改变一个数组变量所引用的数组。看下面这段代码:

public class ArrayInit {
	public static void main(String[] args) {
		
		//静态初始化数组:方法一
		String cats[] = new String[] {
				"Tom","Sam","Mimi"
		};
		
		//静态初始化数组:方法二
		String dogs[] = {"Jimmy","Gougou","Doggy"};
		
		//动态初始化数据
		String books[] = new String[2];
		books[0] = "Thinking in Java";
		books[1] = "Effective Java";
		
		cats = dogs;
		books = dogs;
		printArray(cats);
		printArray(dogs);
		printArray(books);
	}
	
	private static void printArray(String[] arr) {
		for(int i=0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
	}
}

  2.数组是否必须初始化

        对于这个问题,关键在于要弄清楚数组变量和数组对象的差别。数组变量是存放在栈内存中的,数组对象是存放在堆内存中的。数组变量只是一个引用变量,他能够指向实际的数组对象。

      所谓的数组初始化并非对数组变量初始化,而是对数组对象进行初始化。




分享到:
评论
1 楼 Lyleluo 2015-04-24  
深圳java群 397083120 求职,学习全包,外加小美女哦

相关推荐

    java数组初始化详解

    java 数组初始化 详解 doc

    Java数组初始化时内存分配情况解析.pdf

    Java数组初始化时内存分配情况解析

    JAVA数组初始化及应用参考.pdf

    JAVA数组初始化及应用参考.pdf

    45.java数组动态初始化.zip

    45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip45.java数组动态初始化.zip...

    44.java数组静态初始化.zip

    44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip44.java数组静态初始化.zip...

    52.java二维数组静态初始化.zip

    52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化....

    51.java二维数组动态初始化.zip

    51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化.zip51.java二维数组动态初始化....

    java数组初始化笔试题-yvm:[yvm]低性能垃圾回收jvm

    java数组初始化笔试题 | | | | | 这是一个用 C++ 编写的自制 Java 虚拟机,它支持大多数 Java 语言功能,并包含一个基于标记清除的并发垃圾收集器。 此 VM 的主要组件符合 . 它是可运行的,各种语言功能将逐步添加到...

    java语法\Java数组声明、创建、初始化

    java语法\Java数组声明、创建、初始化

    Java程序设计基础:一维数组初始化.pptx

    一维数组初始化 目录 课程导入 掌握一维数组元素的访问方法 掌握一维数组的初始化方法 熟知一维数组的长度属性 掌握输出一维数组所有元素值的方法 访问数组元素 0.0 0.0 0.0 0.0 0.0 [0] [1] [2] [3] [4] myList 首...

    Java程序设计基础:二维数组初始化.pptx

    掌握二维数组初始化的简写方法; 学习目标 课程导入 3 掌握使用双重循环遍历二维数组的方法; 4 了解使用输入值给二维数组初始化的方法 5 掌握使用随机数给二维数组初始化的方法 二维数组—元素访问 二维数组元素...

    数组初始化-参考价值不大,需要的下.docx

    内容概要: 数组初始化-Java中的方法,word格式,直接打开便可以学习使用,可以方便大家进行学习。虽说不可能全面,但也可以作为一个学习索引,大家可以根据自己的需求,进行学习。 关键信息:word格式,wps和word...

    java代码-JAVA中String数组初始化,一维数组和二维数组初始化

    java代码-JAVA中String数组初始化,一维数组和二维数组初始化

    数组元素操作

    数组元素的操作2015年2月12日 - 淘宝SOA框架dubbo学习(7)--异步调用:直接上代码: 1、服务提供端及客户端共享代码 package com.alibaba.dubbo.demo; public interface D...

    5-Java数组与方法

    本章主要介绍数组的概念及定义,并简单介绍了数组的引用传递,及数组的动态、静态初始化及二维数组的定义和使用。

    Java数组讲解

    //在定义数组时,如果确定数组的各个元素,可以进行静态初始化 ,在创建数组时,给数组元素赋初值 int [] data2 = new int[] {34,56,765,78}; //注意静态初始化时,不需要指定数组的长度 //通过foreach循环遍历, 增强的...

    java代码-例子4-6 用字节数组初始化String对象

    java代码-例子4-6 用字节数组初始化String对象

    java数组的初始化及操作详解

    在本文中小编给大家整理了关于java数组的初始化及操作的相关知识点内容,需要的读者们参考下。

    Java数组声明、创建、初始化基础

    本文讲述了Java数组的几个相关的方面,讲述了对Java数组的声明、创建和初始化,并给出其对应的代码

    面试题涵盖Java数组常见操作和用法

    本文将介绍Java数组的常见操作和用法,包括数组的声明、创建、初始化、访问、遍历等。我们还会讨论数组的长度、数组的最大值和最小值、数组的排序和反转、数组的比较和转换等常见操作。此外,我们还会探讨多维数组的...

Global site tag (gtag.js) - Google Analytics