如何使用数组返回多个值,导包和方法重载

学习目标:

了解如何使用数组返回多个值,导包和方法重载


学习内容:

1、 使用数组返回多个值
2、 导包
3、 方法重载


学习步骤:

1、使用数组返回多个值

代码如下:
package com.hg.day15.demo01;

public class Demo01ArrayParam {
    public static void main(String[] args) {
        int[] array = {10,20,30,40,50};
        System.out.println(array);//地址的哈希值
        printArray(array);
    }

    //数组作为参数 传递的始终是地址值
    public static  void printArray(int[] arrayTemp) {
        System.out.println("printArray方法接收到的参数是:");
        System.out.println(arrayTemp);//接收的地址

        for (int i = 0; i < arrayTemp.length; i++)
        {
            System.out.println(arrayTemp[i]);
        }
    }
}

运行结果:

在这里插入图片描述

代码如下:
package com.hg.day15.demo01;

public class Demo02ArrayReturn {
    public static void main(String[] args) {
        int[] result = calculate(10,20,30);
        System.out.println("main 方法接收到的返回值:");
        System.out.println(result);

        System.out.println("总和:"+result[0]);
        System.out.println("平均值:"+result[1]);

        System.out.println("=================");
    }
    //这个写法始终只能返回一个值  使用数组返回多个值
    public static int[] calculate(int a,int b,int c)
    {
        int sum=a+b+c;
        int avg = sum/3;
        int[] array = new int[2];
        array[0] = sum;
        array[1] = avg;
        System.out.println("calculate 方法内部数组是:");
        System.out.println(array);

        return array;
    }
}

运行结果:

在这里插入图片描述

2、导包

概念:

为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。

其实可以理解为就是文件夹,并且使用树形目录的存储方式。

定义格式:

improt 包路径.类名称

如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句
默认只有java.lang包下的内容可以不导包 其他路径下都需要improt 导包

代码如下:
package com.hg.day15.demo02;

//导包
import java.util.Scanner;
/*
1、导包
improt 包路径.类名称
如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句
默认只有java.lang包下的内容可以不导包  其他路径下都需要improt 导包
2、创建对象
3、使用成员方法
获取键盘输入的int数字  int num=sc.nextInt();
获取键盘输入的字符串    String str=sc.next();
 */
public class Demo01Scanner {
    public static void main(String[] args) {
        //创建对象
        Scanner sc=new Scanner(System.in);

        System.out.println("请输入一个整数:");
        int num = sc.nextInt();
        System.out.println("输入的INT 数字是"+num);

        System.out.println("请输入一个字符串:");
        String str= sc.next();
        System.out.println("输入的字符串是"+str);
    }
}

运行结果:

在这里插入图片描述

求两个数的和:
import java.util.Scanner;

/*
题目:
求输入两个int数字的和

思路:
1、既然要输入,就要用到scanner
2、scanner 三步骤  导包、创建、使用方法
3、需要两个int数字,应该使用nextint()
4、得到两个数字后,直接相加
5、打印输出结果

 */
public class Demo02ScannerSum {
    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();
        int result = a+b;
        System.out.println("结果是"+result);
    }
}

运行结果:

在这里插入图片描述

package com.hg.day15.demo03;

import java.util.Random;

/*
Random 类用来生成随机数,
使用三步骤
1、导包
2、创建
3、使用方法
说明
  直接只用int num=rand.nextInt();
  参数的随机数是整个int范围 有正负两种

  如果有参数使用int num=rand.nextint(10);

 */
public class Demo01Random {
    public static void main(String[] args) {
        Random rand = new Random();
        int num = rand.nextInt();
        System.out.println("无参随机数:"+num);

        System.out.println("=========");
        for (int i = 0; i <100;i++)
        {
            int num1 = rand.nextInt(10);//[0,10)---->[0,9]整数
            System.out.println("有参随机数:"+num1);
        }

        System.out.println("=========");
        for (int i = 0; i <100;i++)
        {
            int num1 = rand.nextInt(10)+1;//[0,9]---->[1,10]整数
            System.out.println("有参随机数:"+num1);
        }

    }
}

运行结果:

在这里插入图片描述

猜数字游戏,1~100之间的数字
package com.hg.day15.demo03;

import java.util.Random;
import java.util.Scanner;

//猜数字1~100之间的数字
public class Demo02RandandomGame {
    public static void main(String[] args) {
        Random r = new Random();
        int random = r.nextInt(100)+1;//[1,100]
        Scanner sc = new Scanner(System.in);

        while(true) {
            System.out.println("请输入你猜的数字:");
            int guessNum = sc.nextInt();
            if(guessNum>random)
            {
                System.out.println("您猜大了,请重试!");
            }else if(guessNum<random)
            {
                System.out.println("您猜小了,请重试!");
            }else
            {
                System.out.println("猜对了");
                break;
            }
        }
    }
}

3、方法重载

1、为什么需要方法的重载
对于功能类似的方法来说,因为参数列表不一样,却需要记住很多不同的参数的方法,太麻烦

方法的重载(Oberload):多个方法的名称一样,但是参数列表不一样

好处:只需要记住唯一一个方法名称,就可以实现多个功能

package com.hg.day15.demo04;

/*
   重载与下列因素有关
   1、参数个数不同
   2、参数类型不同
   3、参数顺序不同

   重载与下列因素无关
   1、与参数的名称无关
   2、与返回值类型无关
 */
public class Demo01MetodOver {
    public static void main(String[] args) {
        System.out.println(sum(10,20));
        System.out.println(sum(10,20.0));
        System.out.println(sum(10.0,20));
        System.out.println(sum(10.0,20.0));
        System.out.println(sum(10,20,30));
    }

    public static int sum(int a,int b) {
        System.out.println("参数为int,int");
        return a+b;
    }

    public static double sum(int a,double b) {
        System.out.println("参数为int,double");
        return a+b;
    }

    public static double sum(double a,int b) {
        System.out.println("参数为double,int");
        return a+b;
    }

    public static double sum(double a,double b) {
        System.out.println("参数为double,double");
        return a+b;
    }

    public static int sum(int a,int b,int c) {
        System.out.println("参数为int,int,int");
        return a+b+c;
    }
}

运行结果:

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值