Java动手动脑第四讲课堂作业
动手动脑1
完全“手写代码实现”随机数生成
纯随机数发生器
Modulus=231-1=int.MaxValue
Multiplier=75=16807
C=0
当显示过231-2个数之后,才可能重复。
编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数。
public class suiji
{
private static final int N = 200;
private static final int LEFT = 40;
private static final int RIGHT = 10000;
private static long x0 = 1L;
private long a = 1103515245L;
private long c = 12345L;
private long m = 2147483648L;
// 产生随机数
private long rand ( long r )
{
// a,c,m为常数
r = ( r * a + c ) % m;//Xn+1=(aXn + c)mod m
return r;
}
private long little ( int a, int b, long rand )
{
return a + rand % ( b - a + 1 );
}
private void recursion ( int count, long rand )
{
if (count >= N)
{
return;
}
rand = rand (rand);
long r = little (LEFT, RIGHT, rand);
System.out.print (r + " ");
recursion (++count, rand);
}
public static void main ( String[] args )
{
suiji recur = new suiji ();
recur.recursion (0, x0);
}
}
动手动脑2
“方法重载”
请看以下代码,你发现了有什么特殊之处吗?
我发现同样名称的函数可以不同,这使得函数变得更全面,不同的参数类型可以自动调用相应的函数(方法),即方法的重载。
满足以下条件的两个或多个方法构成“重载”关系:
(1)方法名相同;
(2)参数类型不同,参数个数不同,或者是参数类型的顺序不同。
注意:方法的返回值不作为方法重载的判断条件。
最新文章
- linux下可执行程序的装载和启动
- Windows平台下安装Hadoop
- INI文件的读取(C语言:GetPrivateProfileString/GetPrivateProfileInt)
- mvc:view-controller
- 那些所谓过滤掉iOS菜鸟的面试题
- HTML&;CSS基础学习笔记1.20-DIV标签2
- 2013年全球ERP市场格局(Gartner)
- Decorators and Wrappers in Python
- SpringMVC是什么?
- smarty模板基本语法
- DRF框架之 用户角色权限与访问频率的权限设置
- 2.Odoo产品分析 (一) – 一切为零
- ArcGis Python脚本——批量删除字段
- [Struts2]配置文件
- .NET 黑魔法 - 自定义日志扩展
- bzoj 1014 火星人prefix - 链表 - 分块
- core net 2 nuget的数据源包
- MySQLdb与sqlalchemy的简单封装
- SpringBoot拦截器中无法注入bean的解决方法
- Node.js相关——CommonJS规范
热门文章
- HTML5 01. 布局、语义化标签、智能化表单、表单元素/标签/属性/事件、多媒体、类操作、自定义属性
- 【Offer】[35] 【复杂链表的复制】
- 关于BFC的一些事
- 2018阿里-研发工程师JAVA Software Engineer, Java
- Java 多线程实现接口Runnable和继承Thread区别(转)
- Docker-Compose简介与Ubuntu Server 上安装Compose
- Winform去掉标题栏后移动窗体
- RDDs之combineByKey()
- php接受的post数据类型
- Flask关于request一些方法和属性的整理(持续更新)