文档章节

数组相关

icema1060
 icema1060
发布于 2017/05/20 18:38
字数 605
阅读 7
收藏 0

数组:同一数据类型多个元素的集合

数组的特点:
1.数组定义时:必须明确数组的长度(就是数组中可以存储的元素个数)因为数组的长度是固定的。
2.必须明确数组元素的类型。

     数组的初始化

  1.  动态初始化

数据类型[] 数组名 = new 数据类型[数组长度];int[] arr = new int[5];

 动态初始化 只指定长度 没有给数组赋具体的值, 分配5个空间  arr[0]=3赋值

    2.  静态初始化

给出初始化值,由系统决定长度

int[] arr = new int[]{1,2,3,4,5}; //静态初始化,不用知道数组长度,长度根据元素个数

int[] arr = {1,2,3,4,5};  //此种方法不能先声明arr 在赋值{1,2,3,4,5}

 

Java中的内存分配以及栈和堆的区别

栈内存:存储局部变量 一旦使用完就在栈内存中自动释放。节省内存

堆内存:存储new出来的东西 放的都是实体

            1.堆内存中的实体都有内存地址值。
            2.堆内存中的变量都有默认的初始化值。

获取数组中的最大值
class Demo6Array {
	public static void main(String[] args) {
		int[] arr = {44,55,66,33,77,11};
		int max = getMax(arr);
		System.out.println(max);
	}
   public static int getMax(int[] arr) {
		int max = arr[0];								//定义变量记录住第一个位置的值

		for (int x = 1;x < arr.length ;x++ ) {			//遍历数组,从第二个位置
			if (arr[x] > max) {							//与max中的值比较,如果比max值大
				max = arr[x];							//将max中的值替换掉
			}
		}

		return max;										//将最大值返回
	}
}

二维数组概述和格式

 

第一种格式:int[][] arr = new int[3][2]; 这个二维数组中有三个一维数组 每个一维数组中有2个元素

第二种格式:int[][] arr = new int[3][]; 没有指定个数

arr[0]=new int[5]  arr[1]=new int[4]   arr[2]=new int[6]

第三种格式:int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};

二维数组遍历
class Demo4Array {
	public static void main(String[] args) {
		int[][] arr = {{1,2,3},{4,5},{6,7,8,9}};		

		//System.out.println(arr.length);				//代表一维数组的个数 输出3
		//二维数组的遍历
		for (int x = 0;x < arr.length ;x++ ) {			//外层循环获取到每一个一维数组
			//arr[x]  arr[0] arr[1] arr[2]
			for (int y = 0;y < arr[x].length ;y++ ) {
				System.out.print(arr[x][y] + " ");
			}

			System.out.println();
		}
	}
}
外循环控制的是二维数组的长度,其实就是一维数组的个数。
内循环控制的是一维数组的长度。

 

 

© 著作权归作者所有

共有 人打赏支持
icema1060
粉丝 0
博文 2
码字总数 2192
作品 0
这一次 彻底搞懂Vue针对数组和双向绑定(MVVM)的处理方式

欢迎关注我的博客:github.com/wangweiange… Vue内部实现了一组观察数组的变异方法,例如:push(),pop(),shift()等。 Object.definePropert只能把对象属性改为getter/setter,而对于数组的...

wangweianger
05/12
0
0
java的专题之数组和集合类——数组简介

1.数组的概念: 同一种类型数据的集合。其实数组就是一个容器。运算的时候有很多数据参与运算,那么首先需要做的是什么.不是如何运算而是如何保存这些数据以便于后期的运算,那么数组就是一种...

心中所爱
2017/12/11
0
0
PostgreSQL 遗传学应用 - 矩阵相似距离计算 (欧式距离,...XX距离)

标签 PostgreSQL , 背景 生物科学中相当重要的工作之一解开遗传密码? 欧式空间计算,是其中的一个需求,很有意思吧,PostgreSQL可以用来解开遗传密码。 https://en.wikipedia.org/wiki/Eucl...

德哥
2017/12/27
0
0
ArrayList、linklist、list的区别

List是一个接口,ArrayList和LinkedList是两个实现类,他们实现的方式不一样,其实LinkedList才是真正的链表(如果不清楚什么是链表,需要了解一下相关数据结构的知识,这不是一两句话能说清楚...

随智阔
2014/03/04
0
0
nginx源码分析—数组结构ngx_array_t

本博客(http://blog.csdn.net/livelylittlefish )贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正! Content 0.序 1.数组结构 1.1ngxarrayt结构 1.2ngxarrayt的逻辑结构 ...

晨曦之光
2012/03/09
153
0

没有更多内容

加载失败,请刷新页面

加载更多

sed命令扩展使用操作

打印某行到某行之间的内容 假若文件test.txt的内容是: ertfff**[abcfd]123324444[rty]**fgfgf 怎么能截取 [abcfd]123324444[rty] 这一部分出来呢? 操作命令: 知道开始行和结...

野雪球
14分钟前
0
0
JVM内存笔记

Hotspot JVM 中的 Java 线程与原生操作系统线程有直接的映射关系。当线程本地存储、缓 冲区分配、同步对象、栈、程序计数器等准备好以后,就会创建一个操作系统原生线程。 Java 线程结束,原...

凌渡
20分钟前
0
0
284. Peeking Iterator

Description Tag: Design Difficulties: Medium Given an Iterator class interface with methods: next() and hasNext(), design and implement a PeekingIterator that support the pee......

52iSilence7
22分钟前
0
0
防止快速重复点击的两种思维

防止重复执行的两种思维 场景 下单时,提交按钮,因为网络卡顿或者手快重复点击,导致重复提交订单; 微博,更新个人状态或发表评论时,快速多次点击[发送]按钮,导致相同的信息发送多次. 解决思路 ...

黄威
48分钟前
0
0
在windows环境下使用Virtualbox虚拟Debian系统来运行Docker

标题绕口。 我之前一直使用 Virtualbox 和 homestead 来运行我的 PHP 开发环境。最近决心开始尝试 DevOps,使得开发、部署容器化,来化解人为操作失误和环境不兼容等问题造成的各种损失。就打...

zgldh
50分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部