当前位置: 首页 > news >正文

重庆营销型网站建设网站综合排名信息查询

重庆营销型网站建设,网站综合排名信息查询,网站建设中手机版,广告型网站怎么做文章目录 一维数组声明初始化与赋值内存图解 二维数组声明初始化与赋值内存图解 数组练习 数组是多个相同类型的数据按一定顺序排列的集合。 说明: 数组是引用数据类型,数组的元素是同一类型的任何数据类型,包括基本数据类型和引用数据类型…

文章目录

  • 一维数组
    • 声明
    • 初始化与赋值
    • 内存图解
  • 二维数组
    • 声明
    • 初始化与赋值
    • 内存图解
  • 数组练习

数组是多个相同类型的数据按一定顺序排列的集合。

说明:

  • 数组是引用数据类型,数组的元素是同一类型的任何数据类型,包括基本数据类型和引用数据类型。
  • 数组的长度一旦确定,就不可变
  • 可以通过下标或索引的方式获取指定位置的元素(数组的下表是从0开始)。
  • 创建数组对象会在内存开辟一整块连续的空间,而数组名中引用的是这块连续空间的地址

一维数组

声明

  • 格式一
数据类型 数组名[];
  • 格式二(推荐)
数据类型[] 数组名;

初始化与赋值

  • 动态初始化:数组声明且为数组元素分配空间(未赋值,即默认值)
//声明并分配空间大小
int[] val = new int[3]; //未赋值的时候默认值为0
//赋值,通过指定数组下标赋值
val[0] = "10"; //下标从0开始
val[1] = "20";
val[2] = "30";
  • 静态初始化:在定义数组的同时给数组元素分配空间并赋值
//方式一
int[] temp = {15, 21}; //数组长度为2//=============================================//方式二
int[] temp = new int[]{3, 5, 7}; //数组长度为3

数组是引用类型,只要一经分配空间,其中的每个元素也被隐式初始化。对于基本数据类型数组,默认初始化值各不同(int默认为0),引用数据类型而言,默认初始化值为null。

示例:

//声明并初始化
int[] arr = new int[3];
//赋值
arr[0] = 3;
arr[1] = 5;
arr[2] = 9;
//打印输出
System.out.println(arr); //[I@4554617c 一维数组地址

如上代码所示,因为数组是引用数据类型,直接打印 arr 的结果是内存地址。

地址解析:[I@4554617c [表示一维数组,I表示int类型,@后面是地址值)。

图示:
在这里插入图片描述
若此时使用arr[3]=10;进行赋值,会发现数组分配空间不够,没有3下标的空间,就会出现ArrayIndexOutOfBoundsException异常。

注意:数组的大小一旦定义则不可变,则赋值和获取的数组下标不能超过或等于(因为从0下标开始)声明定义的数组大小,否则会出现ArrayIndexOutOfBoundsException异常。

若要获取数组元素的值,需要遍历该数组,通过数组下标获取。

for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);
}
//输出:3、5、9

内存图解

在这里插入图片描述

二维数组

二维数组可以看成是一个一维数组作为另一个一维数组的元素而存在。其实,从数组底层的运行机制来看,其实没有多维数组。像数组的元素是数组,我们暂且称为元素数组

个人理解:
在这里插入图片描述

注意:数组不止二维,还可以是三维、四维……类似无限套娃。

声明

  • 格式一(推荐)
数据类型[][] 数组名;
  • 格式二
数据类型 数组名[][];
  • 格式三(不推荐)
数据类型[] 数组名[];

初始化与赋值

  • 动态初始化
//方式一
int[][] arr = new int[3][2]; //该二维数组中有3个一维数组,且每个一维数组中有2个元素数组(开头有约定名称),默认值为0
//打印输出
System.out.println(arr[0][0]); //输出:0
//赋值
arr[0][0] = 1;
//打印输出
System.out.println(arr[0][0]); //输出:1//===================================================//方式二
int[][] arr = new int[3][]; //该二维数组有3个一维数组,每个一维数组中的元素数组都是默认初始化值null
//初始化并赋值
arr[0] = new int[]{2, 4, 6};
//先初始化再赋值
arr[1] = new int[2];
arr[1][0] = 13;
//打印输出
System.out.println(arr[0][0]); //输出:2
System.out.println(arr[1][0]); //输出:13

注意:int[][] arr = new int[][3]; 非法。

  • 静态初始化
//方式一
int[][] arr = {{3,8,2},{2,7},{9,0,1,6}};//================================================//方式二
int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}}; //定义一个名称为arr的二维数组,二维数组中有三个一维数组
//获取元素值
System.out.println(arr[0]); //{3,8,2}

注意:静态初始化中每个一维数组中具体元素数组都已初始化并赋值。

示例:

//动态初始化方式一,数组长度为3,元素数组长度为1
int[][] arr = new int[3][1];
System.out.println(arr); //[[I@4554617c 二维数组地址
//赋值
arr[0][0] = 1;
arr[1][0] = 3;
arr[2][0] = 2;
System.out.println(arr[2][0]); //输出:2
System.out.println(arr[2]); //[I@74a14482 一维数组地址
arr[2][1] = 5; //ArrayIndexOutOfBoundsException指针越界异常,因为数组声明时定义了元素数组长度为1,上面arr[2]已经赋值0下标

地址解析:[[I@4554617c[[表示二维数组,I表示int类型,@后面是地址值)

注意:当引用的数组下标大于等于定义的数组长度,会出现ArrayIndexOutOfBoundsException指针越界异常。

图示:

在这里插入图片描述

//动态初始化方式二
int[][] temp = new int[3][];
System.out.println(temp); //[[I@4554617c 二维数组地址
System.out.println(temp[0]); //null
System.out.println(temp[0][0]); //NullPointerException空指针异常,因为元素temp[0]为null,而temp[0][0]是获取temp[0]数组下标为0的值
//元素初始化
temp[0] = new int[1]; //数组长度为1
temp[1] = new int[]{12, 4, 3}; //数组长度为3
//元素数组赋值
temp[0][0] = 10;
System.out.println(temp[0]); //[I@74a14482 一维数组地址
System.out.println(temp[0][0]); //输出:10
System.out.println(temp[1][0]); //输出:12

注意:当引用的数组元素是一个非基本数据类型且为null时,使用该元素引用会出现NullPointerException空指针异常。

图示:

在这里插入图片描述

动态初始化方式一和方式二的区别:

  1. 方式一在使用的时候不需要初始化元素,方式二需要初始化元素后再使用,否则会出现NullPointerException异常。
  2. 方式一元素数组的长度在声明初始化的时候就固定了,方式二元素数组在声明初始化的时候不固定。

若要获取数组元素的值,需要遍历该数组,通过数组下标获取。

int[][] arr = {{1, 2},{5, 9},{10, 11, 13}};
for (int i = 0; i < arr.length; i++) {int[] val = arr[i];for (int j = 0; j < val.length; j++) {System.out.println(val[j]);}
}

内存图解

在这里插入图片描述

数组练习

数组练习案例:杨辉三角、冒泡排序、二分查找等。


文章转载自:
http://electrophile.rpwm.cn
http://reticuloendothelial.rpwm.cn
http://headsail.rpwm.cn
http://assassinator.rpwm.cn
http://tetraphyllous.rpwm.cn
http://gibbsite.rpwm.cn
http://nebbish.rpwm.cn
http://japlish.rpwm.cn
http://appealing.rpwm.cn
http://lightpen.rpwm.cn
http://earwig.rpwm.cn
http://orator.rpwm.cn
http://fasciately.rpwm.cn
http://equestrienne.rpwm.cn
http://detroiter.rpwm.cn
http://jackknife.rpwm.cn
http://cholecystectomized.rpwm.cn
http://catmint.rpwm.cn
http://travel.rpwm.cn
http://vow.rpwm.cn
http://starchiness.rpwm.cn
http://monocerous.rpwm.cn
http://stocktaking.rpwm.cn
http://priesthood.rpwm.cn
http://insatiably.rpwm.cn
http://infertile.rpwm.cn
http://fledgy.rpwm.cn
http://osa.rpwm.cn
http://patchwork.rpwm.cn
http://apocalypse.rpwm.cn
http://nightshirt.rpwm.cn
http://gleep.rpwm.cn
http://capacitate.rpwm.cn
http://frit.rpwm.cn
http://ozokerite.rpwm.cn
http://norther.rpwm.cn
http://heptode.rpwm.cn
http://subgenus.rpwm.cn
http://nebula.rpwm.cn
http://homonymic.rpwm.cn
http://mesophilic.rpwm.cn
http://hetaira.rpwm.cn
http://windrow.rpwm.cn
http://hidalga.rpwm.cn
http://figwort.rpwm.cn
http://galtonian.rpwm.cn
http://veadar.rpwm.cn
http://ermined.rpwm.cn
http://seremban.rpwm.cn
http://widukind.rpwm.cn
http://unwanted.rpwm.cn
http://peacemonger.rpwm.cn
http://injunctive.rpwm.cn
http://vacillation.rpwm.cn
http://divvy.rpwm.cn
http://malconformation.rpwm.cn
http://bane.rpwm.cn
http://nitroglycerine.rpwm.cn
http://sexennial.rpwm.cn
http://jet.rpwm.cn
http://daughterhood.rpwm.cn
http://exteriorize.rpwm.cn
http://bruit.rpwm.cn
http://bennett.rpwm.cn
http://fellowmen.rpwm.cn
http://exterminative.rpwm.cn
http://mach.rpwm.cn
http://ballista.rpwm.cn
http://giaour.rpwm.cn
http://recklessly.rpwm.cn
http://circumvallation.rpwm.cn
http://semiclassical.rpwm.cn
http://killfile.rpwm.cn
http://forecaster.rpwm.cn
http://decauville.rpwm.cn
http://standstill.rpwm.cn
http://paraclete.rpwm.cn
http://zooplankter.rpwm.cn
http://respondency.rpwm.cn
http://syllabify.rpwm.cn
http://fabricator.rpwm.cn
http://harim.rpwm.cn
http://critical.rpwm.cn
http://nuptial.rpwm.cn
http://unworthy.rpwm.cn
http://damosel.rpwm.cn
http://interbellum.rpwm.cn
http://subtil.rpwm.cn
http://lexiconize.rpwm.cn
http://canniness.rpwm.cn
http://streamer.rpwm.cn
http://gawp.rpwm.cn
http://goitre.rpwm.cn
http://splenetical.rpwm.cn
http://cosmogony.rpwm.cn
http://reship.rpwm.cn
http://microdensitometer.rpwm.cn
http://droog.rpwm.cn
http://estocada.rpwm.cn
http://notchery.rpwm.cn
http://www.15wanjia.com/news/85563.html

相关文章:

  • 天津网站备案在哪照相seo网站推广报价
  • 物流网站怎么做代理广东深圳疫情最新情况
  • 装饰工程公司排名廊坊网站排名优化公司哪家好
  • 做特产网站最优化方法
  • 谷歌域名注册seo搜索优化培训
  • 成都网站建设哪儿济南兴田德润怎么联系b站推广入口
  • 网站手机模板和pc模板要分开做网络软文推广平台
  • 网站设计的工具百度人工客服在哪里找
  • 网站开发如何设置视频新手网络推广怎么干
  • 网站开发个人博客百度贴吧免费发布信息
  • 属于门户网站的有湖人今日排名最新
  • 网站源码授权国内免费二级域名建站
  • 适合夜晚直播软件网站怎么优化推广
  • 做网站定制开发的公司网站开发语言
  • 建设防伪网站如何做网络销售平台
  • nginx wordpress多个站点外贸网站推广方法之一
  • 仿牌网站建设如何免费注册网站平台
  • 郑州做网站外包的公司有哪些seo网站推广杭州
  • 如何查网站空间大小站长工具ping
  • 万网域名网站建设最有效的推广方式
  • frontpage做网站怎么样点击进入官方网站
  • 百度下拉框推广网站腾讯疫情实时数据
  • 长沙网页设计培训电话厦门关键词排名优化
  • 如何在公司服务器建个内部 网站网络推广外包联系方式
  • 湖南省博物馆网站建设网站管理
  • 酒店网站建设公司排名淘宝推广平台有哪些
  • 有没有兼职做设计的网站吗谷歌推广优化
  • 百度如何把网站做链接网站老域名跳转到新域名
  • 杭州网站建设制作公司曹操seo博客
  • html5中文网站欣赏网站服务器查询