zoukankan      html  css  js  c++  java
  • 数组和方法

    数组和方法

    方法

    • 方法的含义

      • 方法是用来进行代码优化的一种方式。
      • 可以将一段由多个逻辑组成的复杂代码,拆分成具有单一多集的多个代码块。
      • 每个代码块就是一个方法,方法可以被多次调用。
    • 方法三要素

      • 方法名:方法的名称,用来描述方法的功能。通常使用动词描述,见名知意。
      • 参数:方法被调用的先决条件,参数准备好后方法才能被调用。可以为空。
      • 返回值:方法被调用后返回给调用方的结果。使用return返回该结果。可以没有返回值,使用void声明。
      //有参数和返回值的方法
      public int add(int num1,int num2){
        return num1 + num2;
      }
      //无参数和返回值的方法
      public void menu(){
          System.out.println("欢迎使用系统");
          System.out.println("1、注册");
          System.out.println("2、登录");
          System.out.println("3、退出");
      }
      
    • 值传递和引用传递

      • 形参和实参
      • 基本类型时值传递(数值拷贝)
      • 引用类型时引用传递(地址拷贝)
      • 本质:内存栈中的值的拷贝
      import java.util.Scanner;
      
      public class Test {
          public static void main(String[] args) {
              int i = 10;
              change(i);
              System.out.println(i);//10
              String str = "a";
              change(str);
              System.out.println(str);//a String是常量
              StringBuffer sb = new StringBuffer("a");
              change(sb);
              System.out.println(sb);//ab
              int[] nums = new int[5];
              change(nums);
              System.out.println(nums[0]);//10
      
          }
          public static void change(int i){//传数值
              i+=100;
          }
          public static void change(String str){//传地址 新开辟空间
              str += "b";
          }
          public static void change(StringBuffer sb){//传地址 不新开辟
              sb.append("b");
          }
          public static void change(int[] nums){//传地址 不新开辟
              nums[0] = 10;
          }
      }
      

    图片描述

    数组

    • 数组的含义

      • 使用数组可以使用一个变量存放大量相同的数据,这样可以节省变量的声明个数。
      • 数组在内存中开辟连续的空间来存放数据。
      • 数组使用下标来定位数据,例如:names[2] = "david"。
    • 一维数组

      • 数组定义:

        • 数据类型 标识符[ ] = new 数据类型[大小];
        int[] nums = new int[5];
        
        • 数据类型 标识符 [ ] = {值 1,值 2,…值 N} ;
        int[] nums = {1,2,3,4,5}
        
      • 数组的使用:

        • 声明数组
        • 分配空间
        • 元素赋值
        • 取值,处理数据
      • 数组的存储:

    图片描述

    图片描述

    • 数组一般都是使用for来操作。

    • 二维数组

      • 本质是一维数组中存入另一个一维数组。

      • int stuScore = new int[5][3]; -- 五个学生的三门课程。

      • 也可以这样声明:int stuScore = new int[5][]; --只声明一维 (列向量长度可以不一样)

        public class Test{
            public static void main(String[] args) {
                int [][]a = {{1,2,3},{1,2},{1}};
                System.out.println(a[0].length);//3
                System.out.println(a[1].length);//2
                System.out.println(a[2].length);//1
            }
        }
        
      • 二维数组使用双重for循环操作。

    ljm要加油
  • 相关阅读:
    一个好的时间函数
    Codeforces 785E. Anton and Permutation
    Codeforces 785 D. Anton and School
    Codeforces 510 E. Fox And Dinner
    Codeforces 242 E. XOR on Segment
    Codeforces 629 E. Famil Door and Roads
    Codeforces 600E. Lomsat gelral(Dsu on tree学习)
    Codeforces 438D The Child and Sequence
    Codeforces 729E Subordinates
    【ATcoder】D
  • 原文地址:https://www.cnblogs.com/ljmmm1/p/14250740.html
Copyright © 2011-2022 走看看