• 0709作业


    一. 方法(函数)

    1:函数的概念?函数的格式?格式的解释说明
    函数的概念:完成特定功能的代码块

    函数的格式:
    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {
    方法体语句;
    return 返回值;
    }
    格式的解释说明:
    修饰符:目前就用 public static。
    返回值类型:就是功能结果的数据类型。
    方法名:符合命名规则即可。方便我们的调用。
    参数:形式参数;就是方法定义的,用于接收实际参数的。
    实际参数:就是实际参与运算的。
    参数类型:就是参数的数据类型
    参数名:就是变量名
    方法体语句:就是完成功能的代码。
    return:结束方法的。
    返回值:就是功能的结果,由return带给调用者:返回值是什么类型,返回值类型就是该类型

    2:函数的调用
    A:明确返回值类型的函数调用
    1,明确返回值类型
    2,明确参数列表

    B:void类型的函数调用
    无具体返回值类型的,用void来接收
    返回值类型是void,return可以省略,即使省略,系统也会默认给加上,形式是: return;

    3:函数的练习:
    A:求两个数据之和

    class Demo1_method {  //method:方法,类函数
    	public static void main(String[] args) {
    		int sum=add(10,20);
    		System.out.println(sum);
    	}
    
    	public static int add(int a,int b){
    		int sum=a+b;
    		return sum;
    	}
    }
    

      

    B:判断两个数据是否相等

    //需求:键盘录入两个数据,比较两个数是否相等
    import java.util.Scanner;
    class Demo3_method {
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入第一个数据:");
            int a=sc.nextInt();
            System.out.println("请输入第二个数据:");
            int b=sc.nextInt();
    
            boolean isEquals=isEquals(a,b);
                System.out.println(isEquals);
        }
    
        /*
        比较两个数是否相等 equality
        1,明确返回值类型   int
        2,明确参数列表     int a,int b
        */
        public static boolean isEquals(int a,int b) {
            return a==b;
        }
    }

    C:获取两个数中较大的值

    import java.util.Scanner;
    class Demo2_method {
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            System.out.println("请输入第一个数据:");
            int x=sc.nextInt();
            System.out.println("请输入第二个数据:");
            int y=sc.nextInt();
            
            int max=getMax(x,y);
            System.out.println("max="+max);
        }
            
        //返回两个数中的较大值
        /*  1,明确返回值类型   int
            2,明确参数列表     int x,int y
        */
        public static int getMax(int x,int y){
            int max=(x>y?x:y);
            return max;
        }
    }

    D:打印m行n列的星形矩形

    //需求:根据键盘录入的数据打印m行n列的星形矩形
    import java.util.Scanner;
    class Test3_method {
    	public static void main(String[] args) {
    		Scanner sc=new Scanner(System.in);
    		System.out.print("请输入行m的数:");
    		int m=sc.nextInt();
    		System.out.print("请输入列n的数:");
    		int n=sc.nextInt();
    		getRectangle(m,n);
    	}
    		
    	public static void getRectangle(int a,int b) {
    		for (int i=1;i<=a ;i++ ) {
    			for (int j=1;j<=b ;j++ ) {
    				System.out.print("*");
    			}
    		System.out.println();   
    		}
    	return ;
    	}
    }
    

      

    E:打印nn乘法表

    //需求:根据键盘录入的数据输出对应的乘法表
    import java.util.Scanner;
    class Demo4_method {
        public static void main(String[] args) {
            Scanner sc=new Scanner(System.in);
            System.out.print("请输入数据(1-9)之内的数:");
            int num=sc.nextInt();
    
            print(num);
        }
    
        /*
        1,明确返回值类型   void
        2,明确参数列表    int a
        */
        public static void print(int i){
            for (int a=1;a<=i ;a++ ) {
                for (int b=1; b<=a;b++ ) {
                    System.out.print(a+"*"+b+"="+a*b+'	');
                }
                System.out.println();
            }
            return;
        }
    }

    4:什么是函数重载?以及函数重载的练习?把讲过的案例练习一次即可
    函数重载:在同一个类中,方法名相同,参数列表不同。与返回值类型无关。

    ===============================================================
    ===============================================================

    二. 内存图

    画图操作:
    1.一个数组的内存图

    2.两个数组的内存图

    3.三个引用两个数组的内存图

    =======================================
    =======================================

    三.数组

    1:数组的概念?有什么特点?
    数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。
    数组既可以存储基本数据类型,也可以存储引用数据类型。


    2:一维数组的定义格式?
    数据类型[] 数组名 = new 数据类型[数组的长度];
    3:数组操作的两个小问题
    ArrayIndexOutOfBoundsException:数组索引越界异常
    NullPointerException:空指针异常
    4:数组常见操作:
    数组遍历(依次输出数组中的每一个元素)
    数组获取最值(获取数组中的最大值最小值)
    数组元素逆序 (就是把元素对调)
    数组查表法(根据键盘录入索引,查找对应星期)
    数组元素查找(查找指定元素第一次在数组中出现的索引)
    5:二维数组定义格式?
    数据类型 数组名[][] = new 数据类型[m][n]
    数据类型[] 数组名[] = new 数据类型[m][n]
    看懂针对每种格式的内存图解?

    6:案例
    A:二维数组遍历

    /*
    需求:二维数组遍历
    */
    class Test4_Arr {
      public static void main(String[] args) {
        int[][] arr = {{1,2,},{3,4,5},{6,7,8,9}};
          for (int i = 0;i < arr.length ; i++) {    
            for (int j = 0;j < arr[i].length ; j++) {    
              System.out.print(arr[i][j] + " ");
            }
            System.out.println();    
          }
      }
    }

    B:公司年销售额求和
    某公司按照季度和月份统计的数据如下:单位(万元)
    第一季度:22,66,44
    第二季度:77,33,88
    第三季度:25,45,65
    第四季度:11,66,99

    class Test5_Arr {
        public static void main(String[] args) {
            int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}};
            int sum = 0;                            
            for (int i = 0;i < arr.length ;i++ ) {
                for (int j = 0;j < arr[i].length ; j++) {
                    sum = sum + arr[i][j];
                }
            }
            System.out.println(sum);
        }
    }

    7:参数传递问题
    基本数据类型的值传递,不改变原值,因为方法调用后就会弹栈,而局部变量随之消失
    引用数据类型的值传递,改变原值,因为即使方法调用后弹栈,但是堆内存中的数组对
    象还在,可以通过地址(引用)继续访问.

  • 相关阅读:
    64位Windows2008下插入Oracle中文乱码问题解决
    .net自定义WebService WSDL
    IE8下调用Active控件
    IIS7.5下发布应用程序备忘
    在aws ec2上使用root用户登录
    win2008 服务器文件夹权限配置
    thinkphp3.1 多表联合查询代码
    并发 并行 同步 异步 多线程的区别
    学习ES6生成器(Generator)
    node.js+socket.io配置详解
  • 原文地址:https://www.cnblogs.com/wty1994/p/9285634.html
Copyright © 2020-2023  润新知