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

咸宁网站建设哪家好百度竞价排名事件

咸宁网站建设哪家好,百度竞价排名事件,网站公告栏怎么做,做网站环境配置遇到的问题java中的数组一、数组的概述二、一维数组三、二维数组四、Arrays工具类的使用五、数组中常见的异常一、数组的概述 1、数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。 2…

java中的数组

  • 一、数组的概述
  • 二、一维数组
  • 三、二维数组
  • 四、Arrays工具类的使用
  • 五、数组中常见的异常

一、数组的概述

1、数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。
2、数组的常见概念
① 数组名
②下标(或索引)
③ 元素
④数组的长度
3、 数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。
4、创建数组对象会在内存中开辟一整块连续的空间,而数组名中引用的是这块连续空间的首地址。
5、数组的长度一旦确定,就不能修改。
6、 我们可以直接通过下标(或索引)的方式调用指定位置的元素,速度很快。
7、数组的分类:
①按照维度:一维数组、二维数组、三维数组、…
②按照元素的数据类型分:基本数据类型元素的数组、引用数据类型元素的数组(即对象数组)

二、一维数组

1、一维数组的声明
①一维数组的声明方式:
type var[] 或 type[] var;
例如:
int a[];
int[] a1;
double b[];
String[] c; //引用类型变量数组
② Java语言中声明数组时不能指定其长度(数组中元素的数), 例如: int a[5]; //非法

2、一维数组的初始化

  • 动态初始化:数组声明且为数组元素分配空间与赋值的操作分开进行
int[] arr = new int[3];
arr[0] = 3;
arr[1] = 9;
arr[2] = 8;String names[];
names = new String[3];
names[0] = “钱学森”;
names[1] = “邓稼先”;
names[2] = “袁隆平”;
  • 静态初始化:在定义数组的同时就为数组元素分配空间并赋值。
int arr[] = new int[]{ 3, 9, 8};int[] arr = {3,9,8};

3、一维数组元素的引用

①定义并用运算符new为之分配空间后,才可以引用数组中的每个元素;
②数组元素的引用方式:数组名[数组元素下标]

  • 数组元素下标可以是整型常量或整型表达式。如a[3] , b[i] , c[6*i];
  • 数组元素下标从0开始;长度为n的数组合法下标取值范围: 0 —>n-1;如int a[]=new int[3]; 可引用的数组元素为a[0]、a[1]、a[2]

③每个数组都有一个属性length指明它的长度,例如:a.length 指明数组a的长度(元素个数)

  • 数组一旦初始化,其长度是不可变的

4、一维数组数组元素的默认初始化值

数组是引用类型,它的元素相当于类的成员变量,因此数组一经分配空间,其中的每个元素也被按照成员变量同样的方式被隐式初始化。例如:

public class Test {public static void main(String argv[]){int a[]= new int[5];System.out.println(a[3]); //a[3]的默认值为0 } }
  • 对于基本数据类型而言,默认初始化值各有不同
  • 对于引用数据类型而言,默认初始化值为null(注意与0不同!)
    在这里插入图片描述
    5、一维数组的创建
    Java中使用关键字new来创建数组,例如:
public class Test{public static void main(String args[]){int[] s;s = new int[10];//int[] s=new int[10];//基本数据类型数组在显式赋值之前,//Java会自动给他们赋默认值。for ( int i=0; i<10; i++ ) {s[i] =2*i+1;System.out.println(s[i]);} }
}

6、一维数组的内存解析

在这里插入图片描述

三、二维数组

1、如何理解二维数组?
①数组属于引用数据类型
②数组的元素也可以是引用数据类型
③一个一维数组A的元素如果还是一个一维数组类型的,则,此数组A称为二维数组。

2、二维数组的声明与初始化

int[] arr = new int[]{1,2,3};//一维数组
//静态初始化
int[][] arr1 = new int[][]{{1,2,3},{4,5},{6,7,8}};
//动态初始化1
String[][] arr2 = new String[3][2];
//动态初始化2
String[][] arr3 = new String[3][];
//也是正确的写法:
int[] arr4[] = new int[][]{{1,2,3},{4,5,9,10},{6,7,8}};
int[] arr5[] = {{1,2,3},{4,5},{6,7,8}};//类型推断

3、如何调用二维数组元素?

System.out.println(arr1[0][1]);//2
System.out.println(arr2[1][1]);//nullarr3[1] = new String[4];
System.out.println(arr3[1][0]);
System.out.println(arr3[0]);

4、二维数组的属性:

System.out.println(arr4.length);//3
System.out.println(arr4[0].length);//3
System.out.println(arr4[1].length);//4

5、遍历二维数组元素

	for(int i = 0;i < arr4.length;i++){			for(int j = 0;j < arr4[i].length;j++){System.out.print(arr4[i][j] + "  ");}System.out.println();}		

6、二维数组元素的默认初始化值

规定:二维数组分为外层数组的元素,内层数组的元素

  •  int[][] arr = new int[4][3];
    
  •  外层元素:arr[0],arr[1]等
    
  •  内层元素:arr[0][0],arr[1][2]等
    

针对于初始化方式一:比如:int[][] arr = new int[4][3];

  •  外层元素的初始化值为:地址值
    
  •  内层元素的初始化值为:与一维数组初始化情况相同
    

针对于初始化方式二:比如:int[][] arr = new int[4][];

  •  外层元素的初始化值为:null
    
  •  内层元素的初始化值为:不能调用,否则报错。
    

7、二维数组的内存解析
在这里插入图片描述

四、Arrays工具类的使用

1.理解:
① 定义在java.util包下。
② Arrays:提供了很多操作数组的方法。

2.使用:

		//1.boolean equals(int[] a,int[] b):判断两个数组是否相等。int[] arr1 = new int[]{1,2,3,4};int[] arr2 = new int[]{1,3,2,4};boolean isEquals = Arrays.equals(arr1, arr2);System.out.println(isEquals);//2.String toString(int[] a):输出数组信息。System.out.println(Arrays.toString(arr1));		//3.void fill(int[] a,int val):将指定值填充到数组之中。Arrays.fill(arr1,10);System.out.println(Arrays.toString(arr1));		//4.void sort(int[] a):对数组进行排序。Arrays.sort(arr2);System.out.println(Arrays.toString(arr2));//5.int binarySearch(int[] a,int key)int[] arr3 = new int[]{-98,-34,2,34,54,66,79,105,210,333};int index = Arrays.binarySearch(arr3, 210);if(index >= 0){System.out.println(index);}else{System.out.println("未找到");}

五、数组中常见的异常

1.数组角标越界异常:ArrayIndexOutOfBoundsException

		int[] arr = new int[]{1,2,3,4,5};for(int i = 0;i <= arr.length;i++){System.out.println(arr[i]);}		System.out.println(arr[-2]);//报异常,后面的语句不会执行		System.out.println("hello");

2.空指针异常:NullPointerException

		//情况一:int[] arr1 = new int[]{1,2,3};arr1 = null;System.out.println(arr1[0]);//情况二:int[][] arr2 = new int[4][];System.out.println(arr2[0][0]);//情况三:String[] arr3 = new String[]{"AA","BB","CC"};arr3[0] = null;System.out.println(arr3[0].toString());

一旦程序出现异常,未处理时,就终止执行。

以上就是关于java中数组的介绍,如果有不当之处或者遇到什么问题,欢迎在文章下面留言~
如果你想了解更多关于Java的内容,可以查看:Java学习之路
转载请注明:https://blog.csdn.net/weixin_44662961/article/details/105447566

http://www.lbrq.cn/news/2480491.html

相关文章:

  • 沧州市网站建设价格线上培训课程
  • 网站推广活动方案新型网络营销模式
  • 怎么制作自己的免费网站凡科建站代理登录
  • 镇江网站建设一般多少钱百度的seo排名怎么刷
  • 临沂做百度网站软件公司微信指数查询
  • 怎么做响应式网站百度seo指南
  • 网站主页排版纯手工seo公司
  • wordpress手机端底部菜单主题郑州seo学校
  • js网站记住密码怎么做性能优化工具
  • 网站app下载平台怎么做的线上广告接单平台
  • 网站左侧悬浮导航上海网站外包
  • 网站建设有哪些软件如何在互联网上做推广
  • world做网站企业网站推广渠道
  • 海北公司网站建设建站平台哪个比较权威
  • 网站界面设计尺寸规范自媒体平台有哪些
  • 关于 政府门户网站 建设管理深圳市网络营销推广服务公司
  • 邓州网站推广百度公司的企业文化
  • 高端网站制作网站建设实时积分榜
  • 天马行空网站建设百度官网下载安装到桌面上
  • 网站建设公司湖南多用户建站平台
  • 网站建设开发合同模板下载湖南网站优化
  • 杨彪网站建设免费网站建设哪个好
  • 网站的开发环境设计seo排名系统
  • 企业网站建设套餐价格百度信息流推广和搜索推广
  • 简述网站建设方案类型网销怎么销售的
  • 可以做立体图形的网站做seo需要哪些知识
  • 织梦 网站模板全网营销系统怎么样
  • 贵阳专业做网站公司疫情防控最新通告
  • 耿马网站建设360关键词排名推广
  • 宝鸡网站建设公司都有哪些百度搜索排行榜风云榜
  • 利用RAII与析构函数避免C++资源泄漏
  • 暑期算法训练.9
  • 定义域第一题
  • 口腔助手|口腔挂号预约小程序|基于微信小程序的口腔门诊预约系统的设计与实现(源码+数据库+文档)
  • 尝试几道算法题,提升python编程思维
  • KTO:基于行为经济学的大模型对齐新范式——原理、应用与性能突破