5、JAVA基础-成员方法 及 一位数组

1:方法(掌握)
(1)方法:就是完成特定功能的代码块。
  注意:在很多语言里面有函数的定义,而在Java中,函数被称为方法。
(2)格式:
  修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {
  方法体语句;
  return 返回值;
  }

  修饰符:目前就用 public static。后面再详细讲解其他修饰符
  返回值类型:就是功能结果的数据类型
  方法名:就是起了一个名字,方便我们调用该方法。
  参数类型:就是参数的数据类型
  参数名:就是变量
  参数分类:
  实参:实际参与运算的数据
  形参:方法上定义的,用于接收实际参数的变量
  方法体语句:就是完成功能的代码块
  return:结束方法
  返回值:就是功能的结果,由return带给调用者。
(3)两个明确:
  返回值类型:结果的数据类型
  参数列表:参数的个数及对应的数据类型
(4)方法调用
  A:有明确返回值的方法
    a:单独调用,没有意义
    b:输出调用,不是很好,因为我可能需要不结果进行进一步的操作。但是讲课一般我就用了。
    c:赋值调用,推荐方案
  B:void类型修饰的方法
    a:单独调用
(5)案例:
  A:求和方案
  B:获取两个数中的较大值
  C:比较两个数据是否相同
  D:获取三个数中的最大值
  E:输出m行n列的星形
  F:输出nn乘法表
(6)方法的注意事项
  A:方法不调用不执行
  B:方法之间是平级关系,不能嵌套定义
  C:方法定义的时候,参数是用,隔开的
  D:方法在调用的时候,不用在传递数据类型
  E:如果方法有明确的返回值类型,就必须有return语句返回。
(7)方法重载
  在同一个类中,方法名相同,参数列表不同。与返回值无关。

  参数列表不同:
  参数的个数不同。
  参数的对应的数据类型不同。
(8)方法重载案例
  不同的类型的多个同名方法的比较。

2:数组(掌握)
  (1)数组:存储同一种数据类型的多个元素的容器。
  (2)特点:每一个元素都有编号,从0开始,最大编号是长度-1。
    编号的专业叫法:索引
  (3)定义格式
    A:数据类型[] 数组名;
    B:数据类型 数组名[];

    推荐是用A方式,B方法就忘了吧。
    但是要能看懂
  (4)数组的初始化
    A:动态初始化
      只给长度,系统给出默认值

      举例:int[] arr = new int[3];
    B:静态初始化
      给出值,系统决定长度

      举例:int[] arr = new int[]{1,2,3};
      简化版:int[] arr = {1,2,3};
  (5)Java的内存分配
    A:栈 存储局部变量
    B:堆 存储所有new出来的
    C:方法区(面向对象部分详细讲解)
    D:本地方法区(系统相关)
    E:寄存器(CPU使用)

    注意:
    a:局部变量 在方法定义中或者方法声明上定义的变量。
    b:栈内存和堆内存的区别
    栈:数据使用完毕,就消失。
    堆:每一个new出来的东西都有地址
    每一个变量都有默认值
    byte,short,int,long 0
    float,double 0.0
    char ‘\u0000‘
    boolean false
    引用类型 null
    数据使用完毕后,在垃圾回收器空闲的时候回收。
  (6)数组内存图
    A:一个数组
    B:二个数组
    C:三个数组(两个栈变量指向同一个堆内存)
  (7)数组的常见操作
    A:遍历

            //方式1:
                public static void printArray(int[] arr) {
                    for(int x=0; x<arr.length; x++) {
                        System.out.println(arr[x]);
                    }
                }

            //方式2:
                public static void printArray(int[] arr) {
                    System.out.print("[");
                    for(int x=0; x<arr.length; x++) {
                        if(x == arr.length-1) {
                            System.out.println(arr[x]+"]");
                        }else {
                            System.out.println(arr[x]+", ");
                        }
                    }
                }
        //B:最值
            //最大值:
                public static int getMax(int[] arr) {
                    int max = arr[0];

                    for(int x=1; x<arr.length; x++) {
                        if(arr[x] > max) {
                            max = arr[x];
                        }
                    }

                    return max;
                }

            //最小值:
                public static int getMin(int[] arr) {
                    int min = arr[0];

                    for(int x=1; x<arr.length; x++) {
                        if(arr[x] < min) {
                            min = arr[x];
                        }
                    }

                    return min;
                }
        //C:逆序
            //方式1:
                public static void reverse(int[] arr) {
                    for(int x=0; x<arr.length/2; x++) {
                        int temp = arr[x];
                        arr[x] = arr[arr.length-1-x];
                        arr[arr.length-1-x] = temp;
                    }
                }

            //方式2:
                public static void reverse(int[] arr) {
                    for(int start=0,end=arr.length-1; start<=end; start++,end--) {
                        int temp = arr[start];
                        arr[start] = arr[end];
                        arr[end] = temp;
                    }
                }
        //D:查表
                public static String getString(String[] strArray,int index) {
                    return strArray[index];
                }
        //E:基本查找
            //方式1:
                public static int getIndex(int[] arr,int value) {
                    for(int x=0; x<arr.length; x++) {
                        if(arr[x] == value) {
                            return x;
                        }
                    }

                    return -1;
                }

            //方式2:
                public static int getIndex(int[] arr,int value) {
                    int index = -1;

                    for(int x=0; x<arr.length; x++) {
                        if(arr[x] == value) {
                            index = x;
                            break;
                        }
                    }

                    return index;
                }
时间: 2024-11-09 12:14:32

5、JAVA基础-成员方法 及 一位数组的相关文章

java基础(16)、数组的高级应用--冒泡排序、选择排序

数组排序 目录 一. 冒泡排序 二. 选择排序 三. 优化选择排序 一. 冒泡排序 将数组元素按[从小到大排序]为例 思路:依次对临近的两个元素对比,将最大值放在数组最后:再将剩余的元素对比,大值放在剩余元素的最后. . . 以此循环,最后元素就是按从小到大排列. 1.1. 做之前,先了解这个操作:把数组的最大值放在末尾 将元素1和元素2对比,如果元素1的值大,则元素2和元素1的值互换(此时元素2为大值):再让元素2和元素3对比.  . ( 保留大值).  .  元素3和元素4对比 .  . 

Java基础学习第六天——二维数组与面向对象入门

文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 2016.02.25 lutianfei none 二维数组 格式1(动态初始化) 格式:数据类型[][] 变量名 = new 数据类型[m][n]; m表示这个二维数组有多少个一维数组 n表示每一个一维数组的元素个数 举例: int[][] arr = new int[3][2]; 定义了一个二维数组arr 这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2] 每个一维数组有2个元素,可以通过arr[m]

java基础第三天_数组

/* //1.定义一个函数,函数功能是动态提取int[]中元素的最大值. class Demo { public static void main(String[] arge) { int[] array = new int[]{99,6,999,44}; System.out.println(Max(array)); } public static int Max(int[] array){ int temp = array[0]; for (int a=1; a<array.length;

java基础3_循环语句,数组

java中的循环: Java中提供了3中循环结构:  while  do-while  for ① 循环结构的作用? 可以不断重复执行循环结构中的代码: ② 上面的3个循环结构功能都是一样的,只是结构不一样: ③ 循环的次数的控制 ④ 多种循环结构的语法以及执行流程: ⑤ 能够区分每一种的特点,知道如何选择 while语法: while(条件){ // 循环体,需要重复做的事情的代码 } 执行流程: 上面的这个循环结构可能会执行n次循环 第一次  : 条件(true) ---> 执行一次循环体:

Java_Day05(java 基础下,方法与数组)

1:方法(掌握) (1)方法:就是完成特定功能的代码块. 注意:在很多语言里面有函数的定义,而在Java中,函数被称为方法. (2)格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) { 方法体语句; return 返回值; } 修饰符:目前就用 public static.后面再详细讲解其他修饰符 返回值类型:就是功能结果的数据类型 方法名:就是起了一个名字,方便我们调用该方法. 参数类型:就是参数的数据类型 参数名:就是变量 参数分类: 实参(实际参数):实际

【JAVA基础教程】-浅谈数组及其内存控制

在用JAVA数据前我们都知道必须要先对数组对象进行初始化.当数组的所有元素都被分配合适的内存空间,当制定了初始值时,数组初始化完成.程序以后将不能重新改变数组对象在内存中的位置和大小.那么: 1.JAVA数组为静态,即一旦初始化后,其长度是不可改变的. 2. 数组变量是引用变量,并不是数组对象本身. 3. 两种初始化方式: 动态初始化:指定数组的长度,初始值自动生成. 静态初始化:指定初始值,长度自动生成. 4. JAVA中,引用变量本身无需初始化,引用变量所引用的对象是需要初始化的. 5. 所

java基础笔记(4)----数组

介绍: 数组是一种数据类型,是引用类型,是一块连续的内存空间,用于存储和管理相同类型的多个数据. 定义:-- > 数组的声明方式 先声明,在开辟内存空间--> int [] a; a=new int[5]; 声明的同时静态初始化    -- > int[] a={1,3,5} 声明并开辟内存空间    -- >int [] a=new int[5] 使用:-- >数组名[下标]:下标的有效范围是:0到长度-1: 存元素: 取元素: 遍历数组: 代码如下: package co

Java基础之二进制的位运算介绍

前言 Java编程思想中的操作符这个章节的第一句:在最底层,Java中的数据是通过使用操作符来做的.下面我将重点介绍位运算. 算术运算 Java语言中的基本算术操作符与其他的大多数的程序设计语言是相同的.其中包括 1.加,+ 2.减,- 3.乘,* 4.除,/ 5.取模, % 位运算 1.与 & 2.或 | 3.非 ~ 4.异或 ^ 5.左移 << 6.右移 >> 7.补零右移 >>> 参考资料 Java基本运算符 :https://www.cnblogs

java基础二 &lt;流程控制语句, 方法,数组,java内存结构&gt; 未完待续...

话不多说,直接上干货... 一:流程控制语句 break :  结束当前循环 continue:  结束本次循环,继续下次循环 return:  结束方法 二: 方法 1.方法的特点: 定义在类中的,有特定功能的函数. 方法与方法之间是平级的,不能在方法中定义方法.方法只能够调用方法. 2.方法的重载: 在同一类中,方法名相同,参数列表不同(个数不同,对应的类型不同). 与返回值类型无关. 对应的类型不同的话,与顺序有关系 与形式参数的变量名无关 3.方法的重写: 子类可继承父类中的方法,而不需