首页 > 其他分享 >第二次课堂总结

第二次课堂总结

时间:2022-09-23 21:45:20浏览次数:53  
标签:总结 BigInteger 调用 int Random 100 课堂 方法 第二次

本次课程学习了java当中的方法,以下是课堂总结:

有关静态内容在上一个随笔,在此不在进行讲述。

1.方法:是程序中最小的执行单位。在对于重复代码和具有独立功能的代码可以抽取到方法中。可以提高代码的复用性和可维护性。

2.方法定义:将代码打包在一起

方法调用:手动调用定义的方法

public static 返回值类型 方法名 (参数){

方法体;return 返回值;

}

return 值,必须与返回值类型一致,返回值类型可以为void,此时不需要返回。

同时参数可以是多个或者无参,传入参数必须与方法中的行参类型保持一致。

注:方法不调用无法执行,方法与方法之间为平级关系无法相互嵌套,方法编写顺序与执行顺序无关,return下不要编写代码,无法执行到,为无效代码。

3.方法重载:

在同一个类中,定义多个同名方法,这些同名方法具有相同的功能,每个方法具有不同的参数类型或参数个数,这些同名方法,就构成了重载关系。

4.递归

一个构成递归调用的函数

void DonotRunMe() {

DonotRunMe();

}

递归就是“自己调用自己”。

每个递归函数的开头一定是判断递归结束条件是否满足的语句(一般是if语句), 函数体一定至少有一句是“自己调用自己”的。 每个递归函数一定有一个控制递归可以终结的变量(通常是作为函数的参

而存在)。每次自己调用自己时,此变量会变化(一般是变小),并传送给被调用的函数。

5.大数字和浮点数

对于大数字,其范围远超int,可以利用Java中自带的BigInteger类进行处理,BigInteger 类型的数字范围较 int 类型的数字范围要大得多。BigInteger 支持任意精度的整数,也就是说在运算中 BigInteger 类型可以准确地表示任何大小的整数值。
除了基本的加、减、乘、除操作之外,BigInteger 类还封装了很多操作,像求绝对值、相反数、最大公约数以及判断是否为质数等。

对于浮点数,

计算机不能精确地表达浮点数(特殊形式的除外),因此,当需要比较两个浮点数是否相等时,应该比较其差的绝对值是否在某个允许范围之内即可。同时java中还包含BigDecimal类进行处理。

6.对于Random的使用

直接使用Math.random()方法生成随机数的方法。

//随机生成1~100之间的一个整数
        int randomNumber = (int)(Math.random() * 100) + 1;
        System.out.println(randomNumber);

还有使用Random类的方法。

  • Random():创建一个新的随机数生成器。

  • Random(long seed):使用单个 long 种子创建一个新的随机数生成器。

第一种构造方法是使用默认当前系统时间的毫秒数作为种子数:Random r1 = new Random();

Random random = new Random();
int randomNumber1= random.nextInt(100);

第二种方法是使用自己指定的种子数

Random random1 = new Random(100);
for(int i = 0; i < 10; i++){
System.out.print(random1.nextInt(10) + " ");
}

发现只要种子数和nextInt()中的参数一致的话,每次生成的随机数都是一样的(所以这是伪随机数)。

System.out.println("\n使用同一种子生成的随机数如下:");
Random random2 = new Random(100);
for(int i = 0; i < 10; i++){
System.out.print(random2.nextInt(10) + " ");
}
-------Random调用来源于百度

 

标签:总结,BigInteger,调用,int,Random,100,课堂,方法,第二次
From: https://www.cnblogs.com/ewqewq/p/16724408.html

相关文章

  • 第四周学习总结(文件操作)及使用系统调用进行文件操作
    本周我学习了课本第七章和第八章的内容。下面是我对这两章内容的总结。首先是第七章的文件操作7.1文件操作级别文件操作分为五个级别,从低到高分别为:(1)硬件级别fdisk:......
  • 25th-27th 2022/7/28,2022/7/29,2022/7/30 模拟赛总结15-17
    首先这次是补,因为有个垃圾将我的总结删了它的名字不配出现在我的总结中这三次其实都不算好主要问题是没睡好,读题不仔细以及并没有拼尽全力去打这几点总结应该注重休......
  • 28th 2022/7/27 USACO第二部分之一总结
    发现自己的能力再一次提升,真是好消息在DP方面更加熟练在模拟方面掌握了更多方法,更加成熟这就是热爱信息学带来的恩赐以后不畏困难,勇敢逾越山岭,这才是青春!路在脚下,梦......
  • 29th 2022/8/1 模拟赛总结18
    这次还行因为这次认真去打,而且在打T2两个钟时,仍旧能坚持下去,最好迎来了胜利不错的,但仍旧有一些不足在T2打完发现过了时,心花怒放,光顾着打暴力,结果没什么分,T1也没有静心......
  • 30th 2022/8/3 模拟赛总结19
    这次不是很烂,但是问题出现我的思路过于繁复,其实就是对前缀和的概念理解出了问题前缀和不一定是形如\(f_r-f_{l-1}\)只要加减的东西有意义,就可以了如\(f_{i,j}-f_{i-1......
  • 31st 2022/8/4 模拟赛总结20
    这次死在了小错误上虽然并没有考砸,但是本来可以考得更好T1想到了正解但是又是一个小问题断送了前程在求答案时,小数据还好,但是大数据。。。总之,就是在求答案是加上了......
  • 20th 2022/7/18 模拟赛总结12
    这次嗯,题目真是没有半点水分,干巴巴一片T1T3省选模拟,T2NOIP,恐怖的是T4???这次估计上紫赛时T1-T4-T2-T3首先读题很久,30min过,然后着手T1,找规律,没有半分,只用仅有的数论知识......
  • 16th 2022/7/14 模拟赛总结9
    这次哈,没有想打的意思,随便打了两个暴力和一个表就发呆了今天讲一个专题,却听不下去,因为讲题者太帅了,根本听不懂,感觉他就是把课件念了一遍然后回到座位,却还在看讲题,嗯最后......
  • 17th 2022/7/15 USACO题库第一部分总结
    不错的日子就在今天晚上20:57,我干掉了USACO题库第一部分的最后一题,开森,当然,没有忘记写下总结回首努力,成就感倍增(等等!倍增!倍增是一个时间复杂度为log的算法,思路,用于跳路......
  • 18th 2022/7/15 模拟赛总结10
    这次哈,依然不大想打随便一打,却发现排名居然没掉,其他人摸鱼吗?其实这次比赛题质量不算很高T1是优化,T2是优化+细节,T3是打过类似的找循环,T4是DP优化嗯,因为要回去了所以没......