JavaSE——数组基础(创建格式、下标、获取长度、常见问题、多维数组)

第4节 数组

一、概述

   数组是相同数据类型的多个数据的容器。这些元素按线性顺序排列。所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素;除最后一个元素外,每一个元素都有唯一的后继元素。(“简单理解就是:一个跟一个顺序排列”)。

二、创建格式

格式1:数据类型[] 数组名称 = new 数据类型[数组长度];

//常用格式1:创建数组,并指定长度,不指定数组中的内容
//数据类型[] 数组名称 = new 数据类型[数组长度];
//数组长度通过int数据指定
int[] ages2 = new int[10];

格式2:数据类型[] 数组名称 = {数据1,数据2,数据3...};

//常用格式2:创建数组的同时,指定数组的内容
//数据类型[] 数组名称 = {数据1, 数据2...};
int[] ages = {10,11,12,13,14};

格式3:数据类型[] 数组名;

格式3属于只创建了数组引用名,并未在内存创建数组空间。

//不常用格式1:创建数组,不初始化
//数据类型[] 数组名;
int[] nums;

格式4:数据类型[] 数组名称 = new 数据类型[] {数据1, 数据2,...};

//不常用格式2:创建数组,并指定数组中的内容
//数据类型[] 数组名称 = new 数据类型[]{数据1,数据2..};
int[] ages = new int[] {11,12,13,14};

三、下标

   可以理解为数组中内容的数字序号,从 0 开始 ,对于长度为 n 的数组,下标的范围是 0~n-1。  可以通过下标的方式访问数组中的每一个元素。  例如: 创建 int 类型数组 arr , 给数组 arr 的 5 下标赋值数据 , 然后打印:

在这里插入图片描述

四、获取数组长度

数组名称.length

//如何获取数组的长度:数组名称.length
for(int index=0; index<ages.length ;index++) {//index:0 1 2 3 4System.out.println(ages[index]);
}

五、数组常见问题

  • 下标越界问题:数组越界异常

  • 数组未赋值:空指针异常

六、几个简单的算法

6.1 寻找最大最小值

之前学过,笔记略

public class find_max_min {public static void main(String[] args) {int[] nums = {10, 22, 4, 56, 9, 78};//1、创建一个变量,用于存储遍历数组时发现的最大值int n = nums[0];//2、循环取出数组中的每一个元素for(int i=1; i< nums.length; i++) {//将数组中的每一个内容与n比较,若比n大,则将n的值更新n = n>nums[i]?n:nums[i];}System.out.println(n);}
}

6.2 冒泡排序

之前学过,笔记略

6.3 二分查找

之前学过,笔记略

七、多维数组

定义格式如下所示:

public class multi_D_array {/*** 多维数组** 创建格式:*      数据类型 数组名 = new 数据类型[长度]*      int[][] arr = new int[10][]*/public static void main(String[] args) {int[][] nums = new int[10][];nums[0] = new int[] {1,2,3};System.out.println(nums[0]);}
}

第一个[]内必须给定长度,第二个里面可以不给,如果给定,表示内部每个一维数组长度都一致,如果不给,可以分别定义,长度可以不一样。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/491558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB将颜色反转

如下图&#xff1a; 若需要将其转换为灰度图&#xff0c;则用colormap(gray)&#xff1a; 但若想将上面那幅灰度图颜色反转&#xff0c;即白色部分变黑&#xff0c;黑色部分变白&#xff0c;则用colormap(flipud(gray))&#xff1a;

AR/VR逐渐回暖 联合安防步入未来

来源&#xff1a;VR每日必看2019年&#xff0c;AR/VR市场在走过萌芽、兴起、狂热与泡沫破灭之后&#xff0c;开始逐渐复苏&#xff0c;相关芯片、屏幕、传感器等关键零部件也取得了不少进展&#xff0c;行业有望再次迎来高速增长。相较于C端市场&#xff0c;在B端&#xff0c;A…

JavaSE——面向对象基础(思想、类与对象、构造方法、重载、匿名对象)

第1节 面向对象基础 一、面向对象思想 1.1 概述 面向对象&#xff08;Object Oriented&#xff09;是软件开发方法。面向对象的概念和应用已超越了程序设计和软件开发&#xff0c;是一种对现实世界理解和抽象的方法&#xff0c;是计算机编程技术发展到一定阶段的产物。面向对…

谷歌发布颠覆性研究:不训练不调参,AI自动构建超强网络,告别炼丹一大步...

来源&#xff1a;凹非寺 机器学习全靠调参&#xff1f;这个思路已经过时了。谷歌大脑团队发布了一项新研究&#xff1a;只靠神经网络架构搜索出的网络&#xff0c;不训练&#xff0c;不调参&#xff0c;就能直接执行任务。这样的网络叫做WANN&#xff0c;权重不可知神经网络。它…

JavaSE——面向对象进阶(封装、this、static、代码块、包、权限修饰符、main方法详解)

第2节 面向对象进阶 一、封装与private 概述&#xff1a; 封装的意义在于保护或者防止代码&#xff08;数据&#xff09;被我们无意中破坏。保护成员属性&#xff0c;不让类以外的程序直接访问和修改。封装原则&#xff1a; 隐藏对象的属性和实现细节&#xff0c;仅对外公开访…

孙正义:互联网流量将转化为智能AI流量,我的时代终于来了

“今后&#xff0c;增加软银集团的股东价值的成长引擎是什么呢&#xff1f;从上面的营业利润的增长来看&#xff0c;SVF&#xff08;软银愿景基金&#xff09;贡献了80%。SVF是SoftBank2.0最重要的经营引擎。首先&#xff0c;大约2年时间&#xff0c;SVF的投资对象已经超过了80…

JavaSE——面向对象高级(继承、final关键字、抽象类与接口、多态、Object类、内部类、包装类、可变参数)

第3节 面向对象高级 一、继承 1.1 概述和使用 继承是java面向对象编程技术的一块基石&#xff0c;因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为&#xff0c;使得子类对象&#xff08;实例&#xff09;具有父类的实例域和方法&#xff0c;或子类从父类继…

word的公式后加编码后自动变小

如图所示&#xff0c;在公式后面加编码后公式也变小了&#xff1a; 加编码前&#xff1a; 加编码后&#xff1a; 采用样式分隔符&#xff08;Ctrlaltenter&#xff09;即可解决&#xff0c;输完公式后&#xff0c;按enter转行&#xff0c;输入你要的东西&#xff08;编号什么的…

人工智能70年:科幻和现实的交融

文章素材来源&#xff1a;BBC图片来源&#xff1a;网络【导读】人类飞跑着进入人工智能&#xff08;AI&#xff09;时代。粗略估算现在人们日常生活中有20多种寻常的AI&#xff0c;从垃圾邮件过滤器到叫车软件。AI被分为两类&#xff0c;这些执行具体任务的AI属于“弱人工智能”…

vim 插件之commentary

下载地址 http://www.vim.org/scripts/script.php?script_id3695 如果是使用vundle来管理这个插件的话&#xff0c;你可以添加如下配置 tpope/vim-commentary 这个插件可以根据你当前打开的文件类型&#xff0c;来选择相应的注释方式。 使用的命令是 \\位移 比如&#xff0c;…

JavaSE——异常处理(异常简介、try-catch-finally、throws、throw)

第4节 异常处理 异常处理学习的目标&#xff1a; 明确说明是异常&#xff08;重点&#xff09; 能辨识出常见的异常及其含义&#xff08;熟悉&#xff09; 理解异常产生的原理&#xff08;了解&#xff09; 能处理异常&#xff08;重点&#xff09; 能够自定义异常&#x…

专访「算法之父」Michael Saunders:人工智能未来的突破点可能在自动驾驶

来源&#xff1a;雷锋网 AI 科技评论雷锋网 AI 科技评论按&#xff0c;4 月 25 日&#xff0c;在由涂鸦智能联合知名财经媒体《新财富》、人工智能领域知名媒体《全球智能化商业》共同举办的「全球智能化商业峰会」上&#xff0c;斯坦福大学荣誉教授、新西兰皇家学会荣誉成员、…

从指南针到北斗:中国导航系统促进世界互联互通

6月11日&#xff0c;在维也纳联合国国际会议中心&#xff0c;联合国外层空间事务办公室主任迪皮波&#xff08;右&#xff09;参观中国古代计时装置水运仪象台。本报记者 冯雪珺摄来源&#xff1a;人民日报核心阅读中国卫星导航系统管理办公室在维也纳联合国国际会议中心举办“…

JavaSE——常用类库(上)(泛型、Objects、Math、ArraysBigDecimal类)

第1节 常用类库&#xff08;上&#xff09; 面向对象更多是思想上的东西&#xff0c;常用类库更多是工具上的东西&#xff0c;熟能生巧&#xff0c;多整理笔记。 一、泛型 1.1 概述 泛型&#xff0c;即“参数化类型”。就是将类型由原来具体类型进行参数化 &#xff0c;类似…

朗兰兹纲领:关于数学大一统的伟大构想

麦克斯韦方程组来源&#xff1a;今日头条我们经常聊到物理学家都在追寻物理学的大一统&#xff0c;物理学的第一次大一统是麦克斯韦的麦克斯韦方程组&#xff0c;将电学与磁学相统一&#xff0c;建立了电磁学理论&#xff0c;后来&#xff0c;爱因斯坦想继续完成麦克斯韦未竟之…

JavaSE——常用类库(下)(Date、DateFormat、Calendar、System类)

第1节 常用类库&#xff08;下&#xff09; 六、java.util.Date Date类表示特定的时刻&#xff0c;精度为毫秒。 在JDK 1.1之前&#xff0c; Date类还有两个附加功能。 它允许将日期解释为年&#xff0c;月&#xff0c;日&#xff0c;小时&#xff0c;分钟和秒值。 它还允许…

世界隐形冠军比拼:德国1307家、美国366家、中国68家

来源&#xff1a;股权投资论坛目录一、隐形冠军的概念二、隐形冠军的四个特征三、隐形冠军为何隐形四、隐形冠军到底有多牛五、如何成为隐形冠军六、中国隐形冠军多吗1隐形冠军的概念“隐形冠军”这个概念是赫尔曼西蒙教授提出的。1986年&#xff0c;他在研究德国出口数据时发现…

JavaSE——常用类库(String类)

第1节 常用类库——String 因为String相对之前的类来说更加常用一些&#xff0c;所以对字符串类进行专门的整理。 1. 概述 String类表示字符串&#xff0c;Java中的所有字符串文字都实现为此类的实例。字符串是不变的&#xff0c;它们的值在创建后无法更改 。因为它的创建是通…

VVDocumenter 使用

函数说明文档插件下载链接 https://github.com/onevcat/VVDocumenter-Xcode下载后&#xff0c;直接运行项目升级Xcode后可能不能再次使用&#xff0c;需要做一些处理从Xcode 5开始&#xff0c;苹果要求加入UUID证书从而保证插件的稳定性。因此Xcode版本更新之后需要在VVDocumen…

大自然创作的分形艺术

来源&#xff1a;http://blog.sciencenet.cn/blog-420554-363521.html数学上的分形 (Fractal) 是指“一个粗糙或零碎的几何形状&#xff0c;可以分成数个部分&#xff0c;且每一部分都&#xff08;至少会大略&#xff09;是整体缩小尺寸的形状”。数学家们已经创作出许多美丽的…