什么是数组?

数组是一种数据结构,用来存储一系列的的元素。

定义数组

方法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课 数组相关推荐

  1. java个十百千万位余数_1 Java第三课[流程控制]

    1 Java第三课[流程控制] 1.1 回顾: 1. 标识符的命名:标识符通常意义上是指 类名,包名,方法名,属性名,普通变量等等. 2. 类命名:每个单词的首字母大写; 3. 变量命名规则:字母数字 ...

  2. Java第五课. 类对象

    Java第五课. 类&对象 回顾 1. 冒泡:概念,实现:2个for循环分别起的作用 2. 二维数组可以理解成表格:有行有列,行当成一维数组,列当成一维数组中的元素,行有下标(几个一维数组), ...

  3. Java第六课——画图板

    Java第六课--画图板 这节课画一个画图板,可以画线画圆,还可以通过递归画出好看的图案如:谢尔宾斯基三角形,康托尔方形集,甚至立体图门格海绵. 首先创建一个窗体.定义一个类和一个方法. public ...

  4. 15、Java基础——二维数组

    目录 课前先导 一.定义 二.声明二维数组 三.二维数组的初始化和赋值 四.遍历二维数组 五.用Arrays类中的方法输出数组 课前先导 二维数组及就是数组的嵌套,数组的元素还是数组:多维数组也是数组 ...

  5. java从键盘为数组赋值,java给数组赋值

    java 动态数组赋值,java对象数组详解,java二维数组赋值,java给数组赋值 java数组动态赋值,从零学java笔录-第24篇 图解一维数组在内存中,java二维数组赋值,java给数组赋 ...

  6. Java中创建泛型数组

    Java中创建泛型数组 使用泛型时,我想很多人肯定尝试过如下的代码,去创建一个泛型数组 T[] array = new T[]; 当我们写出这样的代码时编译器会报Cannot create a gen ...

  7. java语言二维数组转置_java实现二维数组转置的方法示例

    本文实例讲述了java实现二维数组转置的方法.分享给大家供大家参考,具体如下: 这里在文件中创建Test2.Exchange.Out三个类 在Exchange类中编写exchange()方法,在方法中 ...

  8. java 数组 列表_用Java将列表转换为数组

    用Java将列表转换为数组 const $source = document.querySelector('#source'); const $result = document.querySelec ...

  9. JAVA关于字符串字符数组处理的小题目

    JAVA关于字符串&&字符数组的小题目 第二题:分析以下需求,并用代码实现 1.键盘录入一个大字符串,再录入一个小字符串 2.统计小字符串在大字符串中出现的次数 3.代码运行打印格式: ...

最新文章

  1. VC++编译链接原理与过程
  2. 四十、Vue项目上手 | 用户管理系统 实现弹窗,搜索和详细页功能(下篇)
  3. linux 用vi命令的使用以及vi编辑,Linux中vi编辑命令的使用
  4. oracle 存储过程 stored procedure 查询一条记录或多条记录
  5. swift 闭包的使用
  6. foreach之引用的使用
  7. 【转】pthread_cond_signal 虚假唤醒问题
  8. 0708 - 今天休息,顺便废了个点子
  9. deepin 应用市场安装软件失败_深度商店软件无法安装问题解决方案
  10. 2022-04-13 分布式任务调度Quartz
  11. What?模电比数电难学?
  12. java中最多小数位_在Java中最多2位小数?
  13. 关于中断try-catch-finally的小结
  14. 读论文Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank
  15. 基于发布者/订阅者模式的小媛逛超市
  16. 关于硬盘分区以及引导
  17. springcloud 问题笔记 Redundant declaration: @SpringBootApplication already applies given @ComponentScan
  18. 发那科 / 法兰克(Fanuc)CNC数据采集
  19. python 小游戏
  20. Qt Creator删除toolbar中多余的“分隔符”

热门文章

  1. 主板有电无法启动_电脑无法开机?这篇文章让你省下几百修理费
  2. 怎么在计算机修复flash,win10系统怎么用flash修复器?教你用flash修复器修复视频的方法...
  3. django调用python脚本返回_讲解django rest framework 自定义返回方法
  4. 实战oracle 12c 处理索引坏块一例
  5. oracle 12c 备份pdb下数据库
  6. java重定向post_java实现响应重定向发送post请求操作示例
  7. Spring使用@PropertySource加载Properties配置文件
  8. 基于JAVA+SpringMVC+Mybatis+MYSQL的相声购票系统
  9. 基于JAVA+SpringBoot+Mybatis+MYSQL的科研项目评审系统
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的账单管理系统