JAVA 第3课 数组
什么是数组?
数组是一种数据结构,用来存储一系列的的元素。
定义数组
方法1
int[] a; //定义数组 aint[] b = new int[100] // 定义长度为100的数组// 其实在Java里面,什么都是类,另外因为数组用的十分频繁,有了代号 [];所以定义一个数组实例
// 就是 int[] b = new int[100]
注意:新创建一个指定长度的数组时,数值型的初始化 0 ;布尔型的初始化 false ; 对象数组 初始化为 null
一旦创建了数组就不可以改变它的长度。
方法2
int[] a = {1,2,3,3,4};无需使用 new是a = new int[] {1,2,2,2,2,2}简化版
遍历数组
注意:数组是一个对象,所以直接print是一个引用指针,而不是一个数组形式。
可以用快速打印 System out.println(Arrays.toString(arrays))
除了用一般的for循环;对于遍历数组;我们可以用 for each循环(注意只能整体打印而不能选择打印)
for (int element : a){System.out.printLn(element)}// 打印数组 a 中每一个元素。
arr.length 表示数组的长度
数组拷贝
Java里的伪拷贝,就是将变量的引用拷贝
int[] b = {1,2,3,4};
int[] a = b;
注意因为是引用,所以改变a, b中任何一个都会关联到另外一个。
真正的拷贝:
int[] c = Array.copyOf(b,b.lenght) //第二个参数是拷贝的长度,如果长度多于其本身的长度,数值型的就补零,布尔型补false;
命令行参数问题
为什么每一个Java应用程序的main函数都带有String[] args
这个参数代表main方法将接收一个字符串,也就是命令行参数,就说明在命令行运行这个程序的时候,会将你在命令行附加的参数传入这个主函数。args 这个字符串数组用以接收。
数组排序
使用 Array 类的 sort方法
int[] a = {2,3,1,8,6,5};Array.sort(a);//直接改变 数组 a 的排序
多维数组
double[][] arrays2;// 声明一个二维数组。
定义完了之后一定要先初始化:
arrays = new double[10][20];
也可以直接赋值:
arrays = {{fafafaf},
{sfafaff}
};
要想快速打印一个数组:System out.println(Arrays.deepToString(arrays))
多维数组的本质
其实多维数组就是一个数组的数组(递归结构);
如果要交换二维数组里的两个行:
double[] temp = b[2];
b[2] = b[3];
b[3] = temp;
JAVA 第3课 数组相关推荐
- java个十百千万位余数_1 Java第三课[流程控制]
1 Java第三课[流程控制] 1.1 回顾: 1. 标识符的命名:标识符通常意义上是指 类名,包名,方法名,属性名,普通变量等等. 2. 类命名:每个单词的首字母大写; 3. 变量命名规则:字母数字 ...
- Java第五课. 类对象
Java第五课. 类&对象 回顾 1. 冒泡:概念,实现:2个for循环分别起的作用 2. 二维数组可以理解成表格:有行有列,行当成一维数组,列当成一维数组中的元素,行有下标(几个一维数组), ...
- Java第六课——画图板
Java第六课--画图板 这节课画一个画图板,可以画线画圆,还可以通过递归画出好看的图案如:谢尔宾斯基三角形,康托尔方形集,甚至立体图门格海绵. 首先创建一个窗体.定义一个类和一个方法. public ...
- 15、Java基础——二维数组
目录 课前先导 一.定义 二.声明二维数组 三.二维数组的初始化和赋值 四.遍历二维数组 五.用Arrays类中的方法输出数组 课前先导 二维数组及就是数组的嵌套,数组的元素还是数组:多维数组也是数组 ...
- java从键盘为数组赋值,java给数组赋值
java 动态数组赋值,java对象数组详解,java二维数组赋值,java给数组赋值 java数组动态赋值,从零学java笔录-第24篇 图解一维数组在内存中,java二维数组赋值,java给数组赋 ...
- Java中创建泛型数组
Java中创建泛型数组 使用泛型时,我想很多人肯定尝试过如下的代码,去创建一个泛型数组 T[] array = new T[]; 当我们写出这样的代码时编译器会报Cannot create a gen ...
- java语言二维数组转置_java实现二维数组转置的方法示例
本文实例讲述了java实现二维数组转置的方法.分享给大家供大家参考,具体如下: 这里在文件中创建Test2.Exchange.Out三个类 在Exchange类中编写exchange()方法,在方法中 ...
- java 数组 列表_用Java将列表转换为数组
用Java将列表转换为数组 const $source = document.querySelector('#source'); const $result = document.querySelec ...
- JAVA关于字符串字符数组处理的小题目
JAVA关于字符串&&字符数组的小题目 第二题:分析以下需求,并用代码实现 1.键盘录入一个大字符串,再录入一个小字符串 2.统计小字符串在大字符串中出现的次数 3.代码运行打印格式: ...
最新文章
- VC++编译链接原理与过程
- 四十、Vue项目上手 | 用户管理系统 实现弹窗,搜索和详细页功能(下篇)
- linux 用vi命令的使用以及vi编辑,Linux中vi编辑命令的使用
- oracle 存储过程 stored procedure 查询一条记录或多条记录
- swift 闭包的使用
- foreach之引用的使用
- 【转】pthread_cond_signal 虚假唤醒问题
- 0708 - 今天休息,顺便废了个点子
- deepin 应用市场安装软件失败_深度商店软件无法安装问题解决方案
- 2022-04-13 分布式任务调度Quartz
- What?模电比数电难学?
- java中最多小数位_在Java中最多2位小数?
- 关于中断try-catch-finally的小结
- 读论文Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank
- 基于发布者/订阅者模式的小媛逛超市
- 关于硬盘分区以及引导
- springcloud 问题笔记 Redundant declaration: @SpringBootApplication already applies given @ComponentScan
- 发那科 / 法兰克(Fanuc)CNC数据采集
- python 小游戏
- Qt Creator删除toolbar中多余的“分隔符”
热门文章
- 主板有电无法启动_电脑无法开机?这篇文章让你省下几百修理费
- 怎么在计算机修复flash,win10系统怎么用flash修复器?教你用flash修复器修复视频的方法...
- django调用python脚本返回_讲解django rest framework 自定义返回方法
- 实战oracle 12c 处理索引坏块一例
- oracle 12c 备份pdb下数据库
- java重定向post_java实现响应重定向发送post请求操作示例
- Spring使用@PropertySource加载Properties配置文件
- 基于JAVA+SpringMVC+Mybatis+MYSQL的相声购票系统
- 基于JAVA+SpringBoot+Mybatis+MYSQL的科研项目评审系统
- 基于JAVA+SpringMVC+Mybatis+MYSQL的账单管理系统