JavaSE(基础篇)——数组(三)

简介: JavaSE(基础篇)——数组(三)

2.数组排序

对指定的 int 型数组按数字升序进行排序


public class java1 {
    public static void main(String[] args) {
        int[] nums = new int[5];
        nums[0] = 1;
        nums[1] = 6;
        nums[2] = 55;
        nums[3] = 15;
        nums[4] = 45;
        System.out.println(Arrays.toString(nums));
        Arrays.sort(nums);
        System.out.println(Arrays.toString(nums));
    }
}

输出:

image.png



3.二分查找

在数组中查找指定元素并返回其下标


注意:使用二分搜索法来搜索指定的数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通过sort方法等)。如果没有对数组进行排序,则结果是不确定的。


如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。


public class java1 {
    public static void main(String[] args) {
        int[] nums = new int[5];
        nums[0] = 1;
        nums[1] = 6;
        nums[2] = 55;
        nums[3] = 15;
        nums[4] = 45;
        Arrays.sort(nums);
        System.out.println("该元素的索引"+Arrays.binarySearch(nums,45));
    }
}

输出:

image.png



4.元素填充

public class java1 {
    public static void main(String[] args) {
        int[] nums = new int[5];
        nums[0] = 1;
        nums[1] = 6;
        nums[2] = 55;
        nums[3] = 15;
        nums[4] = 45;
        Arrays.sort(nums);
        Arrays.fill(nums,2,3,100);
        System.out.println(Arrays.toString(nums));
    }
}


输出:

image.png



5.数组转换为List集合

List<int[]> list = Arrays.asList(nums);

冒泡排序

image.png


public class java1 {
    public static void main(String[] args) {
        int[] nums = new int[5];
        nums[0] = 1;
        nums[1] = 6;
        nums[2] = 55;
        nums[3] = 15;
        nums[4] = 45;
        int [] b = sort(nums);
        System.out.println(Arrays.toString(b));
    }
    public static int[] sort(int[] nums){
        int temp = 0;
        for (int i = 0; i<nums.length-1 ; i++) {
            for(int j = 0 ; j < nums.length - i-1 ; j++){
                if (nums[j] > nums[j+1]){
                    temp = nums[j];
                    nums[j] = nums[j+1];
                    nums[j+1] = temp;
                }
            }
        }
        return  nums ;
    }
}

输出:

image.png




相关文章
|
11月前
|
存储 Java 编译器
数组的定义与使用【JavaSE】
数组的定义与使用【JavaSE】
33 0
|
4月前
|
存储 Java 索引
|
4月前
|
存储 Java 索引
|
12月前
|
存储 机器学习/深度学习 Java
【javaSE】 数组的定义与使用
【javaSE】 数组的定义与使用
|
存储 Java 编译器
JavaSe语法 -- 数组基础篇
JavaSe语法 -- 数组基础篇
|
4月前
|
Java
JavaSE基础篇:枚举
JavaSE基础篇:枚举
|
4月前
|
存储 Java C语言
JavaSE之数组
JavaSE之数组
48 0
|
9月前
|
存储 机器学习/深度学习 Java
【JavaSE】数组的定义与使用
【JavaSE】数组的定义与使用
|
存储 Java 索引
【JavaSE专栏26】数组是什么?如何定义
【JavaSE专栏26】数组是什么?如何定义
|
存储 机器学习/深度学习 算法
【JavaSE】数组的详解
本文讲解:数组的详解。