JAVA——数组

JAVA——数组,第1张

JAVA——数组 数组:存储一组相同类型的一个容器(数据的组合)

什么是数组: 数组是一个变量,用来存储一组相同数据类型的数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间

数组使用步骤:

1,声明数组:数组类型[]数组名;或者:数组类型 数组名[];

2,申请空间(向计算机申请内存):new数据类型[数组的大小/长度];

3,赋值:

4,使用数组

或者合并:

数据类型[] 数组名 = new 数据类型 [数组的长度];

数据类型 []数组名 = {"值1","值2"……};

数组基本要素:         标识符:数组的名称,用于区分不同的数组         数组元素:向数组中存放的数据         元素下标:对数组元素进行编号,从0 开始,数组中的每个元素都可以通过下标来访问         元素类型:数组元素的数据类型         注意: 数组长度固定不变,避免数组越界 注意事项:

1,数组的下标从0开始;

2,数组的长度/数组的元素个数是:数组名.length;

3,数组的最后一个的下标是:(length-1);

4,IDEA遍历数组的快捷写法:

        1,升序遍历:数组名.fori;

        2,倒叙遍历:数组名.forr;r==rerverse(颠倒);

        3,foreach遍历:数组名.for 冒号之后是数组,之前是每一个元素,

如何使用数组:

声明数组: 声明数组 : 告诉计算机数据类型是什么 示例 : int [ ]   JavaScore ; //Java 成绩 语法 : 数据类型         数组名 [ ] ;         数据类型 [ ]          数组名 ; 注意 : 声明数组时不能规定数组长度 分配空间: 分配空间 : 告诉计算机分配几个连续的空间         JavaScore = new int [ 30 ]; 语法 : 声明数组并分配空间         数据类型 [ ] 数组名 = new 数据类型 [ 大小 ] ; 示例:         int [] JavaScore = new int [ 30 ];

数组赋值:

处理数据:  

提问使用数组求10个学生的平均分:  

数组升序排序: 题目:循环录入 5 位学员成绩,进行升序排列后输出结果 提示:         使用java . util . Arrays 类         注意导包:java . util 下的         Arrays类的 sort () 方法:对数组进行升序排列 public class ScoreSort {         public static void main ( String [] args ) {                 int [] scores = new int [ 5 ]; // 成绩数组                 Scanner input = new Scanner ( System . in );                 System . out . println ( " 请输入 5 位学员的成绩: " );                 //循环录入学生成绩并存储在数组中                 for ( int i = 0 ; i < scores . length ; i ++ ){                         scores [ i ] = input . nextInt ();                 }                 //数组中的元素被重新排列                 Arrays . sort ( scores );                 System . out . print ( " 学员成绩按升序排列: " );                 //循环输出数组中的信息                 for ( int i = 0 ; i < scores . length ; i ++ ){                         System . out . print ( scores [ i ] + " " );                 }         } }  

使用Arrays类的各种方法:

public class Arrays_Study {         public static void main ( String [] args ) {                 //返回值:boolean 方法名称 :equals(array1,array2)                 //作用:比较数组array1 和 array2 是否相等                 System . out . println ( "---------equals(array1,array2) 方法 :----------" );                 int [] arr1 = { 10 , 50 , 90 , 80 , 60 };                 int [] arr2 = { 10 , 50 , 90 , 80 , 60 };                 int [] arr3 = { 20 , 40 , 90 };                 //判断arr1 与 arr2 的长度及元素是否相等                 System . out . println ( Arrays . equals ( arr1 , arr2 ));                 //判断arr1 与 arr3 的长度及元素是否相等                 System . out . println ( Arrays . equals ( arr1 , arr3 ));                 //方法名称: sort(array)                 //作用:对数组array 的元素进行升序排列                 System . out . println ( "n---------sort(array) 方法 :----------" );                 int [] JavaScores = { 90 , 50 , 100 , 60 , 30 , 70 };                 //对数组进行升序排列                 Arrays . sort ( JavaScores );                 System . out . println ( "Java 成绩升序排列后: " );                 for ( int i = 0 ; i < JavaScores . length ; i ++ ) {                         System . out . print ( JavaScores [ i ] + "t" );                 }                 System . out . println ();                 //返回值:String 方法名称: toString(array)                 //作用: 将数组 array 转换成一个字符串                 System . out . println ( "n---------toString(array) 方法 :----------" );                 int [] SqlScores = { 70 , 80 , 50 , 40 , 60 , 20 };                 //对数组进行升序排列                 Arrays . sort ( SqlScores );                 //将SqlScores 数组转换为字符串并输出                 System . out . println ( Arrays . toString ( SqlScores ));                 //方法名称:fill(array,val)                 //作用:把数组array 所有元素都赋值为 value                 System . out . println ( "n---------fill(array,val) 方法 :----------" );                 int [] HtmlScores = { 70 , 50 , 90 , 40 , 30 , 100 };                 Arrays . fill ( HtmlScores , 60 );                 //将HtmlScores 数组转换为字符串并输出                 System . out . println ( Arrays . toString ( HtmlScores ));                 //方法名称:copyOf(array,length)                 //作用:把数组array 复制成一个长度为 length 的新数组,返回类型与复制的数组一致                 System . out . println ( "n---------copyOf(array,length) 方法 :----------" );                 int [] arr11 = { 10 , 90 , 80 , 70 , 60 };                 int [] arr22 = Arrays . copyOf ( arr11 , 6 );                 System . out . println ( Arrays . toString ( arr22 ));                 int [] arr33 = Arrays . copyOf ( arr11 , 3 );                 System . out . println ( Arrays . toString ( arr33 ));                 //将arr11 复制成长度为 5 的新数组 arr44                 int [] arr44 = Arrays . copyOf ( arr11 , 5 );                 System . out . println ( Arrays . toString ( arr44 ));                 //返回值:int 方法名称: binarySearch(array, val)                 //作用:查询值val 在数组 array 中的下标                 //(要求数组中元素已经按升序排列,如果没有找到,则返回一个负整数)                 System . out . println ( "n---------binarySearch(array, val) 方法 :----------" );                 int [] MathScores = { 60 , 70 , 40 , 20 , 80 , 100 };                 Arrays . sort ( MathScores );                 int index = Arrays . binarySearch ( MathScores , 99 );                 System . out . println ( index );                 int indexTwo = Arrays . binarySearch ( MathScores , 20 );                 System . out . println ( indexTwo );         } }

 

求数组最大值: 题目 : 从键盘输入五位学生的成绩,求考试成绩最高分 示例:         public static void main ( String [] args ) {                 Scanner input = new Scanner ( System . in );                 //定义存储5 个学生的成绩数组                 int [] scores = new int [ 5 ];                 //记录最大值                 int max = 0 ;                 System . out . println ( " 请输入 5 位学员的成绩: " )                 for ( int i = 0 ; i < scores . length ; i ++ ){                         scores [ i ] = input . nextInt ();                 }                 //假设第一个元素为最大的成绩                 max = scores [ 0 ];                 //从第一个成绩开始比较                 for ( int i = 1 ; i < scores . length ; i ++ ){                         //循环判断                         if ( scores [ i ] > max ){                                 max = scores [ i ];                         }                 }                 System . out . println ( " 考试成绩最高分为: " + max ); } 数组插入数据:

数组降序排序:  

二维数组:   二维数组例图:int[][] s =new int[3] [5];  

二维数组定义:

 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5438120.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存