zoukankan      html  css  js  c++  java
  • Java基础(四)

    数组的反转

        数组的反转:数组中的元素颠倒顺序,例如:原始数组为1,2,3,4,5 数组反转之后为5,4,3,2,1

        思路:本质是考察交换两个变量的值  两种方式

    •     实现反转,就需要将数组最远端元素和最近端位置互换
    •     定义两个变量,保存数组的最小索引和数组的最大索引
    •     让两个索引上的元素交换位置
    •     最小的索引变量++(自增),最大的索引变量--(自减),再次交换位置
    •     最小的索引超过了最大索引,数组反转结束

    伪代码:

    //准备一个需要反转的而数组    
    int[] arr = {1,2,3,4,5,6}
    //定义两个索引变量,一个索引变量指向最小索引,一个指向最大索引
    int min = 0;
    int max = arr.length-1;
    //遍历数组,让两个索引变量产生变化
    min++;
    max--;
    //条件 min < max
    //交换最小索引元素和最大索引元素,需要定义第三方变量
    int temp = 0;
    temp = arr[min];//把最小的索引元素赋值给第三f方变量
    arr[min] = arr[max];//把最大的索引元素赋值给最小的索引元素
    arr[max] = temp;//把第三方变量的值赋值给最大索引的元素

    代码实现:

    public static void main(String[] args){
        int[] arr = {1,2,3,4,5};
        //遍历数组
        //for(1,2,4){3}
      for(int min = 0, int max = arr.length-1;  min < max ; min++,max-- ){
            int temp = 0;
            temp = arr[min];
            arr[min] = arr[max];
            arr[max] = temp;
        }
        //查看反转之后的数组内容
        for(int i=0; i < arr.length ; i++){
            System.out.printn(arr[i]);
        }
        //第二种思路
        int[] arr = {1,2,3,4,5};
        //遍历数组
        for(int i = 0; i< arr.length / 2;m ++){
            //交换变量
            int temp = 0;
            temp = arr[i]
            arr[i] = arr[arr.length - 1 - i];
            arr[arr.length - 1 - i] = temp;
        }
    }

    二维数组的定义

      方式一:

      数组的数据类型[][] 数组名称 = new 数组的数据类型[长度1][长度2];
        长度1 不可省略,代表 该二维数组里面存储的元素个数
        长度2 可以省略,代表该二维数组里面的元素(数组里面的元素个数),而且它里面的数组元素个数一样
         如: int[][] arr= new int[3][2];
         长度3----》该arr数组里面有3个元素(数组)
         长度2----》该arr数组里面的每个数组元素都有两个元素
         相当于----》int[][] arr = {{0,0},{0,0},{0,0}};  

      方式二:

        数组的数据类型[][] 数组名称 = new 数组的数据类型[][]{{元素1,元素2,...},{元素1,元素2,元素3,...},...};

      方式三:

        数组的数据类型[][] 数组名称 = new 数组的数据类型{{元素1,元素2,...},{元素1,元素2,元素3,...},...};

    二维数组访问方式

       借助于【索引】

       格式:

        数组名称[索引]---》访问的是二维数组的元素 //访问二维数组中的一维数组里面的元素
        数组名称[一维数组的索引][一维数组里面的元素索引值]
         如:int[][]arr ={{10,20,50},{30,40,80},{15,100}};
        //访问arr数组当中的10元素
        arr[0][0] = 10;
        //访问arr数组的80元素
        arr[1][2] = 80;

    方法

        方法:在程序中要去实现的某一个功能,需要包含多条语句,这些语句包含循环语句结果、选择语句结构等共同来处理一件事情。

       方法定义的完整格式:修饰符 返回值类型的 方法名称(参数类型1 参数名称1,参数类型2 参数名称2,...){}

       修饰符:public static 

       返回值类型:方法最终产生的数据结果是什么样的

       方法名称:方法的名字,名字自定义-标识符,采用小驼峰,见名知意

       参数类型:进入方法当中的数据是什么样的类型

       参数名称:进入方法当中的数据对应的变量名称

       方法体:方法需要执行的功能,由若干行代码组成的

       return:一般认为有两个作用,第一将后面的返回值返回给程序;第二停止当前正在执行的方法。

       返回值:就是方法执行最终产生的数据结果。

      备注:1. return 后面的"返回值",必须和方法声明上的"返回值类型"保持一致。

         2.方法不允许嵌套,不允许定义在类的外面

         3.方法只能并列,并且必须定义在类的里面。

    方法调用【重点】

      三种调用格式:

    1. 单独调用:方法名称(参数具体值);

    2. 打印调用:System.out.println(方法名称(参数具体值));

    3. 赋值调用:数据类型 变量名称 = 方法名称(参数具体值);

      

    备注:当返回值类型为void的时候,这种方法只能单独调用,不能进行打印调用或者赋值调用。

    返回值类型一般可以理解为数据类型(基本数据类型和引用数据类型),此外还包含一种类型void类型,当方法执行完毕不需要给程序的调用者返回任何的 数据结果是,可以指定该方法的返回值类型为void,此时只能【单独调用】。

    注意事项:

    1. 方法定义的先后顺序无所谓

    2. 方法定义不能嵌套,不能在一个方法内部定义另外一个方法

    3. 方法定义之后,自己不会只想;如果希望执行,一定要进行方法的调用。

      

  • 相关阅读:
    Redis缓存穿透,缓存击穿,缓存雪崩
    Redis持久化机制
    Docker小白到实战之常用命令演示,通俗易懂
    分布式事务最终一致性-CAP框架轻松搞定
    gRPC四种模式、认证和授权实战演示,必赞~~~
    Docker小白到实战之开篇概述
    郑州 | 7月20日,想想都后怕
    避不开的分布式事务
    c++实现十大经典排序算法
    浏览器缓存机制总结
  • 原文地址:https://www.cnblogs.com/lk625/p/13971860.html
Copyright © 2011-2022 走看看