2021-04-20

Java学习

day15

目录

  1. 数组
  2. Java API导包
  3. Random
  4. 方法重载
    包资源
    1、数组
  • 例一:
    运行代码如下:
  package 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 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]);
	}
	//这个写法始终只能返回一个值
	
	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 API包
1、概述
API(Application Programming Interface),应用程序编程接口。Java API是一本程序员的字典),是JDK中提供给我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何形成的,这些类如何使用即可。所以我们可以通过查询API的方式,来学习Java提供的类,并得知如何使用它们。
2、API使用步骤:
1.打开帮助文档。
2.点击显示,找到索引,看到输入框。
3.你要找谁?在输入框里输入,然后回车。
4.看
包。java.lang 下的类不需要导包,其他需要。
5.看类的解释和说明。
6.学习构造方法。
3、引用类型使用步骤

  • 1.导包
    import 包路径.类名称
  • 注意:如果需要使用目标类 和 当前类位于同一个包下,则可以省略导包语句。
    默认只有java.long包下的内容可以不导包,其他路径下都需要 import 导包。
  • 2.创建对象
  • 3.使用成员方法
    获取键盘输入的int关键字 int num = sc.nextInt();
    获取键盘输入的字符串 String str = sc.next();
  • 例二:
    运行代码如下:
package demo02;
//1.导包
import java.util.Scanner;
public class Demo01Scanner {
	public static void main(String[] args) {
		//2.创建对象
		Scanner sc = new Scanner(System.in);
		//3.直接使用
		System.out.println("请输入一个数字:");
		int num = sc.nextInt();
		System.out.println("输入的Int 数字是"+num);
		
		System.out.println("请输入一个字符串:");
		String str = sc.next();
		System.out.println("输入的字符串是:"+str);
	}
} 

运行结果:
运行结果

  • 例三:
  • 题目:求输入两个int数字的和
  • 思路:
    1.既然要用到键盘输入,就要用到Scanner
    2.scanner 三步骤:导包、创建、使用方法
    3.需要两个int数字,应该使用nexInt()
    4.在得到两个数字后,直接相加
    5.打印输出结果
    运行代码如下:
package demo02;
import java.util.Scanner;
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);
	}
}

运行结果:
运行结果
3、Random 类
Random 类,用来生产随机数字

  • 使用三步骤
  • 1、导包
    import java
  • 2、创建对象
  • 3、使用成员方法
  • 说明:
    直接只用int unm = ran.nextInt();
    参数的随机数是整个int 范围,有正负两种。
    如果有参使用int num = ran.nextInt(3);
    [0,3) 0,1,2
    [1-10] 整数
  • 例四:
    运行代码如下:
package demo03;
import java.util.Random;
public class Demo01Random {
   public static void main(String[] args) {
   	Random ran = new Random();
   	
   	int num = ran.nextInt();
   	System.out.println("无参随机数是:"+num);
   	System.out.println("==================");
   	
   	for(int i=0;i<100;i++) {
   	    int num1 = ran.nextInt(10);//[0,10)--->[0,9]整数
   	    System.out.println("有参随机数是:"+num1);
   	}
   	System.out.println("==================");
   	
for(int i=0;i<100;i++) {
   	    int num1 = ran.nextInt(10)+1;//[0,10)--->[1,10]整数
   	    System.out.println("有参随机数是:"+num1);
   	}
   	System.out.println("==================");
   	
   	//错误写法:
   	for(int i=0;i<100;i++) {
   	    int num1 = ran.nextInt(10+1);//[0,11)--->[0,10]整数
   	    System.out.println("有参随机数是:"+num1);
   	}
   }
}

运行结果:
random类

  • 例五:
  • 猜数字,0~100之间的数字。
    运行代码如下:
package demo03;
import java.util.Random;
import java.util.Scanner;
public class Demo02RandandomGame {
	public static void main(String[] args) {
		Random r = new Random();
		int randomNum = r.nextInt(100)+1;//[1,100]
		
		Scanner sc = new Scanner(System.in);	
		while(true) {
			System.out.println("请输入你猜的数字:");
			int guessNum = sc.nextInt();
			
			if(guessNum>randomNum) {
				System.out.println("太大了,请重试");
			}
			else if(guessNum<randomNum){
				System.out.println("太小了,请重试");
			}
			else {
				System.out.println("太大了,请重试");
				break;
			}
		}
		System.out.println("游戏结束!!");
	}
}

运行结果:
游戏运行结果
4、方法重载

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

  • 方法的重载(Overload):多个方法的名称不一样,但是参数列表却不一样。
    好处:只需要记住唯一一个方法名称,就可以实现多个功能。

  • 重载与下列因素:
    1.参数个数不同
    2.参数类型不同
    3.参数顺序不同

  • 重载与下列因素无关:
    1.与参数的名称无关
    2.与返回值类型无关

  • 例六:
    运行代码如下:

package demo04;
public class Demo01MethodOverload {
   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) {
   	//int + double ---->double + double = double
   	System.out.println("参数为int,double");
   	return a+b;
   }
   
   public static double sum(double a, int b) {
   	//int + double ---->double + double = double
   	System.out.println("参数为double,int");
   	return a+b;
   }
   
   public static double sum(double a, double b) {
   	//double + double ---->double + double = double
   	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;
   }

}

运行结果:
方法重载
5、课后练习

  • 题目:求输入三个数字的最大值
    运行代码如下:
    package demo02;
    //1.导包
    import java.util.Scanner;
    public class Demo03ScannerPractice {
    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();
      System.out.println("请输入第三个数字:");
      
      int c = sc.nextInt();
      
      int Max1 = a>b ? a:b;
      int Max = Max1>c ? Max1:c;
      System.out.println("结果是:"+Max);
    

    }
    }
    运行结果:
    课后练习运行结果

tip:2020080605006

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值