使用Java定义数组
目录
1.数组的创建
1.1语法
1.2代码举例
1.3数组的使用
2.数组在方法的使用
2.1基本用法
2.2引用类型
3. 数组作为方法的返回值
3.1传址
3.2返回一个新的数组
4.二维数组
4.1基本语法
4.2遍历二维数组
1.数组的创建
1.1语法
// 动态初始化数据类型[] 数组名称 = new 数据类型 [] { 初始化数据 };// 静态初始化数据类型[] 数组名称 = { 初始化数据 };
1.2代码举例
public class TestArray {public static void main(String[] args) {int [] array = {1,2,3,4,5};int [] array2 = new int[3];int [] array3 = new int[]{1,2,3};}}
1.3数组的使用
求数组长度
public class TestArray {public static void main(String[] args) {int [] array = {1,2,3,4,5};System.out.println(array.length);//求数组的长度System.out.println(array[2]);//打印,下标从零开始array[2] = 8;System.out.println(array[2]);//给下标为3的数重新赋值}}
遍历数组
1.for循环,遍历数组 2.for-each 是for循环的另一种使用方式, 能够更方便的完成对数组的遍历,可以避免循环条件和更新语句写错 3.借助Java的操作数组的工具类 Arrays.toString :将参数的数组 以字符串的形式进行输出
public class TestArray {public static void main(String[] args) {int [] array = {1,2,3,4,5};int[] array = {1,2,3,4,5};//1、for循环for (int i = 0; i < array.length; i++) {System.out.print(array[i]+" ");//遍历数组,即打印数组中的数}System.out.println();//换行//2、for -each for (int x: array ) {System.out.print(x+" ");}System.out.println();//3、字符串形式打印System.out.println(Arrays.toString(array));}}
2.数组在方法的使用
2.1基本用法
使用方法来遍历数组
int[] a 是函数的形参, int[] array 是函数实参.如果需要获取到数组长度, 同样可以使用 a.length
public class TestArray {private static void printf(int[] a) {for (int i = 0; i < a.length; i++) {System.out.print(a[i]+" ");}System.out.println();}public static void main(String[] args) {int [] array = {1,2,3,4,5};printf(array);}}
2.2引用类型
将函数的实参传到方法中的形参,如果形参中某个元素改变,实参也会跟着改变
如果在方法中new一个新的数组来接收,则地址会改变,如果我们要打印出来的话,是是不会影响到元数组的,即实参不会被影响
public class TestArray {public static void func1(int[] array) {array = new int[]{3,4,5,2,8};//定义了一个新的数组,地址不一样,//所以改变不了原本实参的数组}public static void func2(int[] array) {array[0]=45;//使用的地址和原本是一样的,所以可以改变实参的数}public static void main(String[] args) {int[] array = {1,2,3,4,5};System.out.println("原数组:"+Arrays.toString(array));func1(array);System.out.println("定义新数组:"+Arrays.toString(array));func2(array);System.out.println("传形参数组:"+Arrays.toString(array));}}
3. 数组作为方法的返回值
3.1传址
写一个数组,将数组的每一个元素加2;因为使用的是传址,在方法中加2时,原来的数组也会改变,这样就破坏了原来的数组。
public class TestArray {public static void add(int[] array) {//每个数组元素加2for (int i =0; i < array.length; i++) {array[i] = array[i] + 2;}}//遍历数组public static void printArray(int[] array) {for (int i = 0; i < array.length; i++) {System.out.print(array[i]+" ");}}//主函数public static void main(String[] args) {int[] array = {1,2,3,4};add(array);printArray(array);}}
3.2返回一个新的数组
new一个新的数组,是引用了原来数组的元素,不是引用原来数组的地址,所以返回的时候知识将这个数组的首元素返回给函数的调用者,没有拷贝数组的内容,从而更高效。
public class TestArray {//new新的数组,并且返回数组public static int[] form(int[] array) {int[] arr = new int[array.length];for (int i = 0; i < array.length; i++) {arr[i] = array[i] + 2;}return arr;}//遍历新的数组public static void print(int[] array) {for (int i = 0; i < array.length; i++) {System.out.print(array[i]+ " ");}}//主函数public static void main(String[] args) {int[] array = {1,2,3,4,5};int[] put = form(array);print(put);}}
4.二维数组
二维数组本质上也是一个一维数组,只不过每个元素又是一个一维数组
4.1基本语法
数据类型[ ][ ] 数组名称 = new 数据类型 [行数][列数] { 初始化数据 };
4.2遍历二维数组
public class TestArray {public static int[][] Array(int[][] array1) {int[][] ret = new int[3][3];for (int i = 0; i < array1.length; i++) {for (int j = 0; j < array1[i].length; j++) {ret[i][j] = array1[i][j];}}return ret;}public static void main(String[] args) {int[][] array1 = {{1, 2, 3}, {2, 3, 4}, {3, 4, 5}};int[][] array2 = Array(array1);for (int i = 0; i < array1.length; i++) {for (int j = 0; j < array1[i].length; j++) {System.out.print(array2[i][j]+" ");}System.out.println();}}
}
使用Java定义数组相关推荐
- java定义数组_java定义数组的方法有哪些
java定义数组的方法有:1.[数组类型[] 数组名 = new 数组类型[数组长度]]:2.[数组类型[] 数组名 = {数组元素}]:3.[数组类型[] 数组名 = new 数组类型[] {数组元 ...
- java定义数组_java中数组的三种定义方式_java中数组的定义及使用方法(推荐)...
java中数组的三种定义方式 java中,数组是一种很常用的工具,今天我们来说说数组怎么定义 [java] view plain copy /** * 数组的三种定义方法 * 1.数组类型[] 数组名 ...
- java定义数组范围_Java数组的定义和使用
为什么需要数组? 问题:我们要计算30个学生的平均分 如果没有数组,我们的代码是这样的 int score1 = 32; int score2 = 56; int score3 = 78; //--此 ...
- java定义数组的三种类型
三种定义数组的格式如下: int[] arr1=new int[10]; int[] arr2={1,2,3,6}; int[] arr3=new int[]{1,2,3,4,5,6,7,22}; 注 ...
- Java 定义数组的三种方式,int...x动态参数列表
定义数组的三种方式 以 int型 的一维数组为例,说说三种定义方式 int[] arr = new int[3]; 这是最常用的方式,定义时就含有默认值,可以后续赋值 public class Dem ...
- java定义数组长度_在JAVA中定义数组时,可不可以一开始不设定数组的长度?
定义时当然可以:例如 int[] a; 但是要把它初始化成为一个真正意义上的数组就必须设定长度: int [] a = new int[10]; 这时就只能改变数组里的数值而不能改变它的长度了. Ja ...
- java定义数组变量初始化为0_java中怎么数组初始化?
展开全部 //数组定义最方便的就是用for循环来做定义,数组下标是从e69da5e6ba9062616964757a686964616f313333656462620开始,到11的话就是12个数字.要 ...
- java 定义数组属性_Java数组的定义与使用
一.数组概念 可以将多个同一数据类型的数据,存储到同一个容器中 1. 格式 数据类型[] 数组名=new 数据类型[元素个数] "数据类型"表示该数组中可以存放哪一类型的数据 &q ...
- Java定义数组的三种方式
最新文章
- 逻辑模型设计步骤-关系模式定义
- css设置元素继承父元素宽度_前端新手必知-5种新型的CSS长度单位
- 百度浏览器支持html5,百度手机浏览器完美驾驭HTML5
- Common Lisp中调用R
- java 接口的观察者模式_java观察者模式
- sqoop mysql 安装_Sqoop安装及验证_MySQL
- php 修改文件访问时间,php获取文件的创建、修改时间及访问时间
- 获取3的倍数_植物分类的基础——获取广泛来源的资料【乱翻书】
- html资源文件记载进度条,HTML5矢量实现文件上传进度条
- 中国人工智能趋势报告(完整版)
- ARM开发5.3.6 基础实训( 2 ) 单个 LED 显示单个按键的状态--LPC21XX
- Aliplayer视频点播加密播放
- JXSE 2.5 : What's Cool #5 -- java.util.concurrent
- MPQ文档布局分析[转帖]
- xcode ios 模拟器下载安装
- VC静态库开发与使用
- linux 查看开机启动项
- python关系图谱_文本分析之制作网络关系图 Python
- java英语句子_经典英语句子 (转) - HelloWorld 善战者,求之于势,不责于人;故能择人而任势。 - BlogJava...
- 运用java打印出菱形
热门文章
- 打造优秀项目团队的3个核心原则
- linux服务器挂硬盘无法启动不了怎么办,CentOS 硬盘损坏导致无法启动
- http 404 badRequest
- ASP.NET中选择GridView的行获取数据
- Android 界面防劫持
- 爬取百度指数行业排行
- linux桌面环境i3,Arch Linux桌面环境-i3
- OpenCV for Java 整合Spring Boot写一个灰度测试Demo
- Web功能测试笔记02 ——读《Web测试囧事》
- NVIDIA之AI Course:Getting Started with AI on Jetson Nano—Class notes(三)