【Demo 0003】Java基础-数组
本章学习要点:
1. 了解数组的基本概念;
2. 掌握数组使用方法;
一、数组的基本概念
1. 数组定义:
同一数据类型数据的集合,在Java中它也是一种数据类型;数组按维数可分为一维数组,二维数组等多维数组,维数越多,使用越复杂所以在实现运用中一最多使用二维;
2. 数组存储
数据按顺序存储,数组中的每一个数据可以下标来访问,下标以0开始至n-1结束;
注:Java中的二维数组中第二维是可以不等长的,这有别的C/C++语言;
二、数组使用方法
1. 一维数组 -- 只有一维的数组
a. 创建
type[] array = new type[array length]; 或 type array[] = new type[第一维长度];
如: int[] intArray = new int[10]; // 创建了一个长度为10,类型为int的数组
string[] strArray = new string[2]; // 创建了一个长度为2,类型为string的数组
b. 访问
array[index] // 下标从0 …. n - 1
如:
// setter 修改数组值
intArray[0] = 100;
strArray[0] = "Hello World!"
// getter 获取数组值
int intValue = intArray[0];
string strValue = strArray[0];
通常使用循环访问数组中成员变量如:
for (int ii = 0; ii < intArray.length; ii++) {
intArray[ii] = ii;
}
2. 多维数组 -- 一维以上的数组
以二维数组为例
a. 创建
type[][] array = new type[第一维长度][第二维长度]; 或 type array[][] = new type[第一维长度][第二维长度];
如:
定长数组
int[][] intArray = new int[10][10]; // 创建一个10x10整型数组
第二维不定长数组
int[][] intArray = new int[10][]; // 第二维不定长
for (int ii = 0; ii < intArray.length; ii++) {
intArray[ii] = new int[ii+ 1];
}
b. 访问
array[第一维下标][第二维下标]
for (int ii = 0; ii < intArray.length; ii++) {
for (int jj = 0; jj <intArray[ii].length; jj++) {
intArray[ii][jj] = jj + 100;
}
}
三、代码演示
杨飞三角形实现: (不定长二维数组)
int[][] yangHei(int count) {
int [][] data = new int [count][];
for (int ii = 0; ii < count; ii++) {
data[ii] = new int[ii+1];
data[ii][0]= 1;
data[ii][ii]= 1;
}
for (int ii = 1; ii < count; ii++) {
for (int jj = 0; jj < ii; jj++) {
if (jj > 0 && jj < ii) {
data[ii][jj] = data[ii - 1][jj - 1] + data[ii - 1][jj];
}
}
}
return data;
}
10x10数组赋值与输出(定长二维数组)
int[][] data = new int[10][10];
for (int ii = 0; ii < data.length; ii++) {
for (int jj = 0; jj < 10; jj++) {
data[ii][jj] = jj;
}
}
for (int ii = 0; ii < data.length; ii++) {
for (int jj = 0; jj < 10; jj++) {
System.out.print(data[ii][jj] + " ");
}
System.out.println();
}
【Demo 0003】Java基础-数组的更多相关文章
- java基础-数组的折半查找原理
java基础-数组的折半查找原理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让你写一个数组的查找功能,需求如下:在一个数组中,找一个元素,是否存在于数组中, 如果存在就返回 ...
- Java基础-数组常见排序方式
Java基础-数组常见排序方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 数据的排序一般都是生序排序,即元素从小到大排列.常见的有两种排序方式:选择排序和冒泡排序.选择排序的特 ...
- Java基础——数组应用之StringBuilder类和StringBuffer类
接上文:Java基础——数组应用之字符串String类 一.StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和 ...
- 《Java基础——数组的定义与使用》
Java基础--数组的定义与使用 一. 一维数组: 格式一: 数组类型 数组变量[]=new 数据类型[长度]; //需要后续赋值,且后续赋值时只能为单个元素赋值. 或 数组类型 数组变量 ...
- Java基础——数组Array
一.数组基本概念 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组有三 ...
- Java基础--数组(Arrays)
数组(Array),是多个相同类型数据按一定顺序排列 的集合,并使用一个名字命名,并通过编号的方式 对这些数据进行统一管理.本篇博客是对Java基础中的数组进行详细说明. 目录: 数组的概述 一维数组 ...
- java基础---数组的基本概念(1)
学习资源来自尚硅谷java基础学习 1. 数组的概念 数组(Array), 是多个相同类型数据按一定顺序排列的集合, 并使用一个名字命名, 并通过编号的方式对这些数据进行统一管理. 数组属于引用数据类 ...
- JAVA基础——数组详解
学习JAVA中数组的使用 一.什么是数组? 问:编写代码保存 4 名学生的考试成绩. 答:简单啊,定义 4 个变量呗 问:那"计算全年级 400 名学生的考试成绩",肿么办 答: ...
- Java基础——数组复习
数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 数组长度固定不变,避免数组越界 数组是静态分配内存空间的,所 ...
随机推荐
- 修改、设置root密码
参考文档: http://zhidao.baidu.com/link?url=OaUTAj6FrMGDjbPZHWv3NNDOaIl3HNqZz_3lF_Zpi8oZpLkBfnHfPlpgE1EvN ...
- HapiJS开发手冊
HapiJS开发手冊 作者:chszs.转载需注明.博客主页:http://blog.csdn.net/chszs 一.HapiJS介绍 HapiJS是一个开源的.基于Node.js的应用框架,它适用 ...
- Dockerfile指令总结
指令的一般格式为INSTRUCTION arguments,指令包含FROM.MAINTAINER.RUN等. FROM 格式为FROM <image>或FROM <image> ...
- 再造 “手机QQ” 侧滑菜单(一)——实现侧滑效果
本系列文章中,我们将尝试再造手机QQ的侧滑菜单,力争最大限度接近手Q的实际效果,并使用 Auto Layout 仿造左侧菜单,实现和主视图的联动. 代码示例:https://github.com/jo ...
- Adobe Acrobat Ⅺ Pro安装激活
1.注意一定要断网安装,如果你有防火墙拦截亦可(注意:系统自带那防火墙不行). 2.将AcrobatPro_11_Web_WWMUI.exe解压到一个目录下,找到目录下的setup.exe安装,安装时 ...
- Union - Find 、 Adjacency list 、 Topological sorting Template
Find Function Optimization: After Path compression: int find(int x){ return root[x] == x ? x : (root ...
- Eclipse用法和技巧二十二:快速调整字体大小
团队代码review的时候,一般都会一堆人围着显示器,或者投影仪.这个时候调整代码字体大小就显得很重要.下面直接说操作方式. 步骤一:Windows -> Preference 步 ...
- Eclipse Package Explorer视图无法打开
打开Eclipse后Package Explorer视图无法打开,显示一个红叉,红叉后面的Deatils后,显示下面的内容: java.lang.ArrayIndexOutOfBoundsExcept ...
- 纯CSS设置Checkbox复选框控件的样式
Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...
- SxsTrace工具用法
Windows7平台上有一个强大的SxsTrace工具,能够跟踪调试应用程序执行时须要的动态库的版本号和路径. SxsTrace使用的方法: 1.首先必须以Administrator用户身份登录,打开 ...