首页 > 其他分享 >数组(二)

数组(二)

时间:2023-09-15 21:32:57浏览次数:29  
标签:arr int 元素 数组 public fill

数组(二)

今日份学习为数组的基本操作。

分为以下几个部分:遍历数组,填充数组元素,替换数组元素,对数组进行排序以及复制数组。

  • 遍历数组通常遍历数组是通过使用for循环来实现的。需注意的是,遍历二维数组需要使用双层for循环,通过数组的length属性可获得数组的长度。
    【例】呈梯形输出二维数组中的元素
    public class Trap {

    public static void main(String[] args) {
    int b[][]=new int [][] {{1},{2,3},{4,5,6}};
    for(int k=0;k<b.length;k++) {
    for(int c=0;c<b[k].length;c++) {
    System.out.print(b[k][c]);
    }
    System.out.println();
    }
    }

    }
    在遍历数组时,使用foreach可能会更简单。
    【例】(数据和上述例子相同)

    public class Tautog {

    public static void main(String[] args) {
    int b[][]= new int[][] {{1},{2,3},{4,5,6}};
    System.out.println("数组中的元素是:");
    int k=0;
    for(int x[]:b) {
    k++;
    int c=0;
    for(int e:x) {
    c++;
    if(k==b.length&&c==x.length) {
    System.out.println(e);
    }else
    System.out.printf(e+"·");
    }
    }
    }

    }
  • 填充数组元素数组中的元素定义完成后,可通过Arrays类的静态方法fill()来对数组进行填充和替换。
    可将指定的int值分配给int型数组的每个元素。
    fill (int[] a, int value)
    (a:要进行元素替换的数组,value:要储存数组中所有元素的值)
    【例】fill (int[] student, int 5)
    【例】使用fill()的方法填充数组元素
    import java.util.Arrays;
    public class Swap {

    public static void main(String[] args) {
    int arr[]=new int [5];
    Arrays.fill(arr, 8);
    for(int i=0;i<arr.length;i++) {
    System.out.println("第"+i+"个元素是:"+arr[i]);
    }

    }

    }
  • 替换数组元素将指定的int值分配给int型数组指定范围中的每个元素。填充的范围从索引fromIndex(包括)一直到索引toIndex(不包括)。如果fromIndex =toIndex,则填充范围为空。
    fill(int[] a, int fromIndex, int toIndex, int value)
    【例】使用fill()方法替换数组中的元素
    import java.util.Arrays;
    public class Swap {

    public static void main(String[] args) {
    int arr[]=new int [5];
    Arrays.fill(arr, 8);
    for(int i=0;i<arr.length;i++) {
    System.out.println("第"+i+"个元素是:"+arr[i]);
    }

    }

    }
  • 对数组进行排序使用Arrays的类的静态方法sort()。sort()方法提供了多种重载形式,可对任意类型的数组进行升序排序。
    Arrays.sort(object)
    object是指数组名称。具体使用在最终的例子中体现。
  • 复制数组

有两种方法可对数组进行复制。

copyOf()方法是复制数组至指定长度,copyOfRange()方法是将指定长度复制到一个新数组中。

copyOf(arr, int newlength)

copyOfRange(arr, int fromIndex, int toIndex)

(使用方法可参照数组的填充替换用法)




标签:arr,int,元素,数组,public,fill
From: https://blog.51cto.com/u_15966010/7487266

相关文章

  • Java---数组
    学完之后需要实现这两个问题:#生成六个1-33之间的随机数,要求不重复+特殊号码(生成彩票)#数组扩容:先定义一个十个长度的数组,写一个方法用于向数组里面存值,每次只存入一个,反复的调用存值的这个方法,当存入的值超过十个以后,数组长度自动扩充用于存放后面的数据。创建数组本质上还......
  • MFC动态数组CArray
             ......
  • 【代码随想录算法训练营第二天】977.有序数组的平方、209.长度最小的子数组 、59.螺旋
    Day2-数组2023.9.15Leetcode977有序数组的平方给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。初解我还是不能想到暴力解法之外的,对某个问题的最优复杂度也没有概念。就算提示我是用指针,我也想不到思路。现在我知......
  • 二维数组最大连续和
    最大相连男生importjava.util.Scanner;importjava.util.*;//注意类名必须为Main,不要有任何packagexxx信息publicclassMain{staticintrow;staticintcol;staticint[][]arr;staticint[][]offsets={{0,1},{1,0},{1,-1},{1,1}};......
  • 删除有序数组中的重复项 II
    题目删除有序数组中的重复项II给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。说明:为什么返回数值是整数,但输......
  • 数组详解——一维数组,二维数组(初始化,存储,输入与输出……)
    概念相同元素的集合,存放>=1个数据类型相同1.一维数组typearr_name[常量值(元素个数)]存放在数组的值是数组元素,在创建数组时可以指定数组的大小和元素类型type是数组元素的类型,可以是char,short,int,float,也可以自定义1.1初始化完全初始化:intarr1[5]={1,2,3,4,5};不完全初始化:(......
  • 封装一个用来获取多层数组对象的最后一层对象集合
    //获取多层数组对象的最后一层的对象functiongetAllIds(tree:any,result:any){//遍历树获取id数组for(constiintree){if(tree[i].id)result.push(tree[i]);//遍历项目满足条件后的操作if(tree[i].children){//存在子节点就递归ge......
  • 对于数组中取下标中值操作int mid=(left+right)/2的讨论
    分两种情况1.left和right之间(含left和right元素)共有奇数个,此时中轴线穿过正中间的元素判断方法:right-left的值为偶数,即(right-left)%2=0。此时(left+right)/2恰为整数,此结果恰为left与right下标之间的中值下标,正好在中轴线上2.left......
  • leetcode 将有序数组转换为二叉搜索树
    给你一个整数数组nums,其中元素已经按升序排列,请你将其转换为一棵高度平衡二叉搜索树。高度平衡二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过1」的二叉树。示例1:输入:nums=[-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:[0,-10,5,null,-3,null,9......
  • Java数组遍历
    publicclassbianli{publicstaticvoidmain(String[]args){int[]arr={11,22,33,44,55};printArray(arr);}publicstaticvoidprintArray(int[]arr){System.out.print("[");......