Java数组初始
首先要清楚数组变量与数组对象的概念。数组变量是一个引用变量,可以指向数组对象。
int[] a = new int[]{7, 8, 9}; a是数组变量,指向有new创建的数组对象。
数组变量的初始化即是该变量指向有效的数组对象或赋值为null。如下所示:
int[] a = new int[]{7, 8, 9};
int[] b = a;
int[] c = null;
数组变量a,b,c都是有效的,a与b指向相同的数组对象,c取值为null,不指向任何对象。
数组对象的初始化指的是每个数组元素的初始化。java中数组对象初始化方式有两种。
第一种:定义数组并初始化每个数组元素的值。如:
int[] intVal = new int[] {3, 6, 5, 7, 9}; //或者 int[] intVal = {3, 6, 5, 7, 9};
float[] floatVal = {5.6f, 7.32f, 3.1415926f};
MobileScreen[] screen = new MobileScreen[] {
new MobileScreen("LCD", 3.4),
new MobileScreen("OLED", 0.9)
};
第二种:只定义数组,并指定数组长度,数组元素的值由系统指定如:
double[] doubleVal = new double[2];
数组doubleVal中每个元素的初始值有系统指定,为0.0。即doubleVal[0]与doubleVal[1]的值都是0.0、
MobileScreen[] mobile = new MobileScreen[2];
mobile[0]与mobile[1]的值为null
对于元素为引用类型的数组,每个元素的初始值为null,即数组元素没有指向任何对象(也说明系统没有创建任何MobileScreen对象)。
若为元素赋值,需要创建对象。
mobile[0] = new MobileScreen("LED", 5.6);
mobile[1] = new MobileScreen("AMOLED", 0.3);
附MobileScreen类定义:
class MobileScreen {
String type;
double thickness;
MobileScreen(String type, double thickness) {
this.type = type;
this.thickness = thickness;
}
}
Java数组初始的更多相关文章
- Java数组及其内存分配
几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...
- Java 数组声明与初始化
引言 学习了好久的java,每次要写数组的声明和初始化代码,总是理不清.最近又碰到了一次这种情况.这次拿出<Thinking In Java>好好总结一翻. 数组声明 对于数组的声明其实都 ...
- Java数组(初学者必看)
数组无论在哪种编程语言中都算是最重要的数据结构之一,同时不同语言的实现及处理也不尽相同.但凡写过一些程序的人都知道数组的价值及理解数组的重要性,与链表一道,数组成为了基本的数据结构.尽管Java提供了 ...
- java数组与内存控制
1.1数组的初始化 数组是大多数编程语言都提供一种的复合结构,如果程序需要多个类型相同的变量时,就可以考虑定义一个数组.java语言的数组变量时引用类型的变量,因此具有java独有的特性. java数 ...
- Java数组你知多少?
下面我带大家一起加深一下对Java数组的认识: 1.理解数组 数组也是一种数据类型,本身就是一种引用类型,我们从它的初始化方法,通过关键字new去完成定义及初始化就可以知道. 数组的长度是不变的,一旦 ...
- Java数组的内存管理
Java数组的内存管理 Java语言是典型的静态语言,因此Java的数组是静态的,即当数组被初始化之后,该数组的长度是不可变的.Java程序中的数组必须经初始化才能使用.所谓初始化,就是当数组对象的元 ...
- Java数组的复制全解
1.将一个基本数据类型数组的引用赋值给另一个数组 public class Array_copy { int[] array1=new int[]{1,2,3,4,5,6}; int[] array2 ...
- Java基础学习-Random类和Java数组
1.随机数类(Random) package com.denniscui; import java.util.Random; /* * Random:用于产生随机数 * * 使用步骤: * ...
- Java数组(int为例)
Java数组(int为例) 定义:相同数据类型的数据的组合,是一种引用类型,是一个对象,存在堆里. 数组初始化:int[] scores1 = new int[]{72,90,59};//静态初始化: ...
随机推荐
- MyBatis:4
转载:http://www.cnblogs.com/xrq730/p/5289638.html 什么是动态SQL MyBatis的一个强大特性之一通常是它的动态SQL能力.如果你有使用JDBC或其他相 ...
- 杜伦大学提出GANomaly:无需负例样本实现异常检测
杜伦大学提出GANomaly:无需负例样本实现异常检测 本期推荐的论文笔记来自 PaperWeekly 社区用户 @TwistedW.在异常检测模块下,如果没有异常(负例样本)来训练模型,应该如何实现 ...
- web安全问题分析及处理
前言 这是我观看了<前端漏洞分析及处理-蔡慧芨>公开课之后的一个总结及简单实践体会.在可能的情况下我会把他们都实际操作一遍,更加深刻地体会前端安全的重要性. web安全问题有哪些 XSS- ...
- 守护进程的创建(syslog函数)
守护进程(daemon)是指在后台运行的,没有控制终端与之相连的进程.它独立于控制终端,通常周期性的执行某种任务. 守护进程是一种很有用的进程.Linux的大多数服务器就是用守护进程的方式实现的,如I ...
- stringBuild置空方法
参看连接:http://blog.csdn.net/roserose0002/article/details/6972391
- sql server 的变量
对于占用关键字等不符合规则的命名,可使用中括号[ ]括起来. 局部变量: 局部变量名必须以@开头,作用范围仅为程序内部. 常用用途: 1.作为计数器计算循环执行的次数或控制循环执行的次数 2.保存数据 ...
- 对HTML(HyperText Markup Language)的认识以及总结
一.HTML的基础结构 以上图片可以看出HTML的基础结构: 文档声明+<html>根元素(也叫顶级元素)------><html>里包括<head>元素+& ...
- linux export环境变量
Linux export命令参数(转载) 功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环 ...
- Locust 其他协议
Locust 是基于HTTP作为主要目标构建的,但是他同样可以扩展其他的协议,接受请求与获得返回.在编写的客户端的时候,我们就要使用到最常使用的 request_success 和 request_f ...
- 特征工程 —— 特征重要性排序(Random Forest)
树模型天然会对特征进行重要性排序,以分裂数据集,构建分支: 1. 使用 Random Forest from sklearn.datasets import load_boston from skle ...