Java深入浅出数组的定义与使用下篇

接着上一篇继续,老铁们

1.检查数组的有序性

给定一个整型数组, 判断是否该数组是有序的(升序)

   public static boolean isUp(int[] array){
        for (int i = 0; i <array.length-1 ; i++) {
            if(array[i]>array[i+1]){
                return false;
            }
        }
        return true;
    }

    public static void main(String[] args) {
        int[] array = {12,13,14,15,16,17,18};
        System.out.println(isUp(array));

    }
}

打印结果:

2.数组排序(冒泡排序)

public class TestDemo {
    public static void bubbleSort(int[] array){
        for (int i = 0; i <array.length-1 ; i++) {
            boolean flg = false;
            for (int j = 0; j <array.length-1-i ; j++) {
                if(array[j]>array[j+1]){
                    int tmp = array[j];
                    array[j] = array[j+1];
                    array[j+1]= tmp;
                    flg = true;
                }
            }
            if(flg = false){
                return;
            }

        }
    }
    public static void main(String[] args) {
        int[] array = {12,1,23,15,16,13,17};
        bubbleSort(array);
        System.out.println(Arrays.toString(array));

    }
}

打印结果:

Java对数组排序函数:

填充函数:

这个函数后面还能跟三个参数:

一般情况都是左闭右开的 [2,6)形式

3. 给定一个整型数组

将所有的偶数放在前半部分, 将所有的奇数放在数组后半部分

    public static void func(int[] array){
        int i = 0;
        int j = array.length - 1;
        while(i <j){
            while(i < j && array[i] % 2 == 0){
                i++;
            }
            while (i < j && array[j] % 2 != 0){
                j--;
            }
            int tmp = array[i];
            array[i] = array[j];
            array[j] = tmp;
        }
    }

    public static void main(String[] args) {
        int[] array = {1,4,3,6,8,5,9};
        func(array);
        System.out.println(Arrays.toString(array));
    }

打印结果:

4.数组的拷贝 

第一种:

  把一个数组的值拷贝到另一个数组
 public static int[] copyArray(int[] array){
        int[] copy = new int[array.length];
        for (int i = 0; i <array.length ; i++) {
            copy[i] = array[i];
        }
        return copy;
    }

    public static void main(String[] args) {
        int[] array = {1,4,6,3,8,9};
        int[] ret = copyArray(array);
        System.out.println(Arrays.toString(ret));

    }

打印结果:

第二种:

拷贝数组(本身)函数

 打印结果:

还可以长度乘2,但不是在原来的基础上扩大2倍,这里是一个新的对象

拷贝数组(一部分 )函数:

所有的Java里面的源代码from,to都是左闭右开区间的 

第三种:

 打印结果:

第四种拷贝:

5. 定义二维数组

二维数组的三种定义方法:

2行3列的二维数组 

6.打印二维数组

二维数组相当于一个特殊的一维数组

 第一种:

 第二种:

第三种:

打印结果:

Java二维数组的特殊化

第一种:

 打印结果:

第二种:

 分析原因:

第三种:

为什么Java数组的列号可以不写,因为我们可以手动指定

 这叫做不规则的二维数组

打印结果:

总结:

本文具体说了一下一维数组的几种拷贝方法,介绍了二维数组的定义、打印和不规则的二维数组。上述就是今天全部的内容了,文章哪里出现了问题我都会积极改正,也希望大家能更快的掌握自己想要的知识,让我们一起加油!!!!!

到此这篇关于Java深入浅出数组的定义与使用下篇的文章就介绍到这了,更多相关Java 数组内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java中数组的定义与使用

    目录 一.数组的基本用法 1.什么是数组 2.创建数组 3.数组的使用 二.数据作为方法参数 1.基本用法 2.理解引用类型 3.认识null 4.JVM内存区域划分 5.数组作为方法的返回值 6.关于数组的地址 四.数组练习 1.数组转字符串 2.数组拷贝 五.二维数组 1.二维数组的语法 2.二维数组的结构 3.用for-each遍历二维数组 总结 一.数组的基本用法 1.什么是数组 数组本质上就是让我们能 "批量" 创建相同类型的变量. 如果我们需要创建多个同一个类型的变量,则不

  • Java深入浅出数组的定义与使用上篇

    目录 一.数组的基本用法 1.什么是数组 2.定义数组  3.数组的使用 打印数组:  二.数组作为方法的参数 基本用法 三.数组练习题 1.交换两个变量的值 2.写一个方法,将数组中的每个元素都*2  3.模拟实现tostring函数 4.找数组中的最大元素  5.查找数组中指定元素(顺序查找)  6.查找数组中指定元素(二分查找)   总结: 一.数组的基本用法 1.什么是数组 数组:存储一组相同数据类型的数据的集合. 2.定义数组  int[] :int类型数组  double[] :do

  • Java中数组的定义和使用教程(二)

    数组与方法调用 数组是一个引用数据类型,那么所有的引用数据类型都可以为其设置多个栈内存指向.所以在进行数组操作的时候,也可以将其通过方法进行处理. 范例: 方法接受数组 public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2, 3}; printArray(data); } //定义一个专门进行数组输出的方法 public static void printArr

  • Java如何自定义类数组的创建和初始化

    目录 自定义类数组的创建和初始化 自定义类封装数组,添加类方法实现数据 自定义类数组的创建和初始化 刚刚在慕课学习Java的集合类List过程中,向集合中添加元素时,遇到一个问题: 定义了一个Course类 public class Course { private String id; private String name; //课程名称 //get set方法 public String getId() { return id; } public void setId(String id)

  • Java中数组的定义与使用详解

    目录 数组的基本概念 数组引用传递 数组静态初始化 二维数组 总结 数组的基本概念 如果说现在要求你定义100个整型变量,那么如果按照之前的做法,可能现在定义的的结构如下: int i1, i2, i3, ... i100; 但是这个时候如果按照此类方式定义就会非常麻烦,因为这些变量彼此之间没有任何的关联,也就是说如果现在突然再有一个要求,要求你输出这100个变量的内容,意味着你要编写System.out.println()语句100次. 其实所谓的数组指的就是一组相关类型的变量集合,并且这些变

  • Java基础教程之数组的定义与使用

    目录 一.数组的基本概念 二.数组的声明 三.数组的创建及初始化 1.数组的创建 2.数组的初始化 四.访问数组元素 五.for each 循环 六.数组的拷贝 七.数组排序 八.二维数组 总结 一.数组的基本概念 数组是一种数据类型,用来存储同一类型值的集合,它在内存中是一段连续的空间.通过一个整形下标(index,或者称之为索引)可以访问数组中的每一个值.例如,如果a是一个整型数组,a[i]就是一个下标为i的一个整数,数组是一种引用类型. 二.数组的声明 声明数组变量时,需要指出数组类型(数

  • Java中数组的定义和使用教程(三)

    数组排序 在很多的面试题上都会出现数组排序的操作形式.但是这个时候你千万别写上:java.util.Arrays.sort(数组).而这种排序都是以升序为主. 基础的排序操作: 范例: 冒泡排序 public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {9, 3, 1, 5, 4, 2, 7, 8, 6, 0}; sort(data); printArray(data); }

  • Java中数组的定义和使用教程(一)

    数组的基本概念 如果说现在要求你定义100个整型变量,那么如果按照之前的做法,可能现在定义的的结构如下: int i1, i2, i3, ... i100; 但是这个时候如果按照此类方式定义就会非常麻烦,因为这些变量彼此之间没有任何的关联,也就是说如果现在突然再有一个要求,要求你输出这100个变量的内容,意味着你要编写System.out.println()语句100次. 其实所谓的数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作.数组本身属于引用数据类型,那么既然是引

  • Java动态数组Arraylist存放自定义数据类型方式

    目录 Java动态数组Arraylist存放自定义数据类型 自定义一个动态数组ArrayList,加深对动态数组的理解 Java动态数组Arraylist存放自定义数据类型 class Point { int x; int y; public Point(int x,int y) { this.x=x; this.y=y; } } public class Test { public static void main(String[] args) { // TODO Auto-generated

  • Java深入浅出数组的定义与使用下篇

    接着上一篇继续,老铁们 1.检查数组的有序性 给定一个整型数组, 判断是否该数组是有序的(升序) public static boolean isUp(int[] array){ for (int i = 0; i <array.length-1 ; i++) { if(array[i]>array[i+1]){ return false; } } return true; } public static void main(String[] args) { int[] array = {12

  • java中数组的定义及使用方法(推荐)

    数组:是一组相关变量的集合 数组是一组相关数据的集合,一个数组实际上就是一连串的变量,数组按照使用可以分为一维数组.二维数组.多维数组 数据的有点 不使用数组定义100个整形变量:int i1;int i2;int i3 使用数组定义 int i[100]; 数组定义:int i[100];只是一个伪代码,只是表示含义的 一维数组 一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的, 使用java数组,必须经过两个步骤,声明数组和分配内存给该数组, 声明形式一 声明一维数组:数据类型

  • Java关于数组的介绍与使用

    目录 一.前言 二.数组的定义 数组定义的形式: 格式1: 格式2: 三.数组的初始化方式: 1.动态初始化 动态开辟的示意图: 2.静态初始化 四.索引访问数组 五.数组长度表示 六.遍历数组 方法一: 实例演示: 代码: 方法二: 实例演示: 代码: 七.数组的初始值 实例演示: 代码: 一.前言 前面我们学习了随机数的介绍和使用,那么这篇我们来学习java中数组的定义和使用, java的数组和c语言的十分类似. 二.数组的定义 数组定义的形式: 格式1: 数据类型 [ ] 数组名 :如in

  • Java二维数组简单定义与使用方法示例

    本文实例讲述了Java二维数组简单定义与使用方法.分享给大家供大家参考,具体如下: Java的二维数组是先创建一个一维数组,然后该数组的元素再引用另外一个一维数组.在使用二维数组的时候,通过两个中括号[]来访问每一层维度的引用,直到访问到最终的数据. public class MultiDimArray{ /** * @param args */ public static void main(String[] args) { int[][] arr = new int[3][]; arr[0]

随机推荐