Java黑皮书课后题第7章:*7.13(随机数选择器)编写一个方法,返回1到54之间的随机数,但不能是传递到实参中的数。指定如下方法头
7.13(随机数选择器)编写一个方法,返回1到54之间的随机数,但不能是传递到实参中的数。指定如下方法头
- 题目
- 题目描述
- 可变长参数列表
- 破题
- 代码
- 运行实例
题目
题目描述
7.13(随机数选择器)编写一个方法,返回1到54之间的随机数,但不能是传递到实参中的数。指定如下方法头:
public static int getRandom(int… numbers)
可变长参数列表
本题方法头给出的“int… numbers”,涉及到可变长参数列表
相关内容可以参考这篇文章,讲的相对比较基础比较好理解(直接点击“参考这篇文章”即可跳转,文章有文字详细叙述,尽量去看一下)
下图是那篇文章博主的代码(忽视类名,注意第四行):
最后结果是:
5
10
也就是add方法中的args接收到的可以是一个实参,也可以是多个实参(此时以数组形式接收)
破题
因为题目中要求“方法返回1到54之间的随机数,但不能是传递到实参中的数”
博主的想法是main方法调用getRandom方法时传入的是,返回随机数的上下线(含),拿本题返回1到54之间的随机数即为:getRandom(1, 54)
代码
public class Test7_13 {public static void main(String[] args) {// 调用getRandom方法并接收一个随机整数值int result = getRandom(1, 54);// 为测试结果是否正确将result输出System.out.println(result);}public static int getRandom(int... numbers){/**(int) Math.random()获取0到0的整数值*(int) (Math.random()*2)获取0到1的整数值*(int) (Math.random()*3)获取0到3的整数值*所以:(int) (Math.random()*a)获取0到a的整数值* (int) (Math.random()*a+b)获取b到(a+b)的整数值*/int a = numbers[1] - numbers[0];int b = numbers[0];return (int) (Math.random()*a+b);}
}
运行实例
50
37
39
Java黑皮书课后题第7章:*7.13(随机数选择器)编写一个方法,返回1到54之间的随机数,但不能是传递到实参中的数。指定如下方法头相关推荐
- Java黑皮书课后题第6章:*6.2(求一个整数各位数字之和)编写一个方法,计算一个整数各位数字之和。使用下面的方法头:public static int sumDigits(long n)
6.2(求一个整数各位数字之和)编写一个方法,计算一个整数各位数字之和.使用下面的方法头:public static int sumDigits(long n) 题目 题目概述 槽点 代码 运行示例 ...
- Java黑皮书课后题第6章:*6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数。编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数
6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法体计算字符串中的字母个数.编写一个测试程序,提示用户输入字符串,然后显示字符串中的字母个数 题目 题目描述 破题 代码 运行示例 题目 ...
- Java黑皮书课后题第7章:*7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目
7.22(计算一个字符串中大写字母的数目)编写程序,从命令行输入一个字符串,然后显示字符串中大写字母的数目 题目 题目描述 破题 代码 运行实例 题目 题目描述 7.22(计算一个字符串中大写字母的数 ...
- Java黑皮书课后题第2章:2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加
2.6(求一个整数各位数的和)读取一个0和1000之间的整数,并将给整数的各位数字相加 题目 题目描述 运行示例 题目槽点与破题 题目槽点 破题 如何提取数字 代码块 方法评价 题目 题目描述 2.6 ...
- Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类
Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...
- Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的
Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...
- Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字
Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字 题目 代码 结果 题目 都在上面 代码 import java.math.B ...
- Java黑皮书课后题第10章:*10.13(几何:MyRectangle2D类)定义MyRectangle2D类
Java黑皮书课后题第10章:10.3 题目 程序 代码 Test13.java Test13_MyRectangle2D.java 运行 UML 题目 程序 Test13.java:测试程序 Tes ...
- Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中
Java黑皮书课后题第10章:10.2(BMI类)将下面的新构造方法加入BMI类中 题目 程序说明 题目槽点 代码:Test2_BMI.java 运行实例 题目 程序说明 Test2_BMI.java ...
- Java黑皮书课后题第10章:*10.1(Time类)设计一个名为Time的类。编写一个测试程序,创建两个Time对象(使用new Time()和new Time(555550000))
Java黑皮书课后题第10章:*10.1设计一个名为Time的类.编写一个测试程序,创建两个Time对象 题目 程序 代码 Test1.java Test1_Time.java 运行结果 UML 题目 ...
最新文章
- 2月19日2021CCF颁奖典礼即将举办,“为什么在横店?”
- Android 相机,视频录制
- 基于JSON Web Tokens的单点登录(SSO)或通行证(Passport)系统方案
- 为什么民航单位免费给查胸部CT+为什么天气预报中有风向
- 查询mysql视图_MySQL数据库简介及常用命令
- 垃圾收集 java_关于Java垃圾收集
- Bootstrap系列 -- 36. 向上弹起的下拉菜单
- 类似色/同色系电商海报模板,PSD分层模板
- 任正非华为为什么暂不推出鸿蒙,任正非表示,华为的鸿蒙系统已经上网?惊喜吗...
- 推理集 —— 工作与职业
- Linux chapter 2
- 《物联网IoT解决方案》(Unity+SteamVR+云技术+5G+AI+物联网+IoT+人机交互+万物互联+物物互联+射频识别+全球定位系统+实时采集+智能化感知+识别+管理+立钻哥哥+==)
- Google正确搜索方法
- 从零开始手写 VIO
- 我的微信公众号开通了
- 新华三网络部署(和思科的区别)
- 施旺将接替贺恩霆担任赛诺菲大中华区总裁;嘉士伯集团试用生物基啤酒瓶 | 美通企业日报...
- 调用JavaAPI发送传真
- eMMC Partition
- k8s 集群之使用 nfs 网络存储挂载外部目录和文件
热门文章
- linux top交叉编译_ARM Linux交叉编译工具链的制作
- 强制生成32位arm程序_3. 从0开始学ARM-ARM模式、寄存器、流水线
- opencv 图像 抠图 算法_人工智能 | 不用绿幕也能实时抠图,商汤等提出只需单张图像、单个模型的新方法MODNet...
- python语言编写一个生成九宫格图片的代码_用Python一键生成炫酷九宫格图片,火了朋友圈...
- python 创建空的numpy数组_Numpy入门教程:01. 数组的创建与属性
- Java 开发者必备手册开放下载!
- python输出第几行第几个_python怎么PRINT出第几行
- 一个游戏美术写给策划的快速入门
- Photon多人游戏开发教程
- 数据库面试题【一、事务四大特性】