JAVA编程思想,第一章,对对象的概念,以及访问权限的有了深入理解

JDK,看到Math
Character类的of方法,这里用到了二分查找法
public static UnicodeBlock of(int codePoint) {if (!isValidCodePoint(codePoint)) {throw new IllegalArgumentException();}int top, bottom, current;bottom = 0;top = blockStarts.length;current = top/2;// invariant: top > current >= bottom && codePoint >= unicodeBlockStarts[bottom]while (top - bottom > 1) {if (codePoint >= blockStarts[current]) {bottom = current;} else {top = current;}current = (top + bottom) / 2;}return blocks[current];}

Double类的compare方法,这里这个写法比较优雅
return (thisBits == anotherBits ?  0 : // Values are equal(thisBits < anotherBits ? -1 : // (-0.0, 0.0) or (!NaN, NaN)1));                          // (0.0, -0.0) or (NaN, !NaN)

以及Integer里面的一些位移运算符(<<,>>,>>>等)

JDK源码学习之一lang包相关推荐

  1. 【JDK源码】java.lang包常用类详解

    接下来的几天开始JDK源码的学习和总结,之前看<java编程思想>的时候看到java的基础知识有很多,其中支撑着这些基础的基础中的基础当属JDK.JDK的基础代码里面又分了很多基础的模块, ...

  2. [Jdk源码学习]聊聊concurrent包下面的volite*

    引子:关于Java并发中的volatile关键字 并切--定义 悲观锁: 1.一个线程在执行一个操作时持有对一个资源的独占锁(A线程占了资源a,则其他线程就不能操作资源a) 2.一般用在冲突比较可能发 ...

  3. JAVA JDK 源码学习

    JAVA JDK 源码学习 ,以1.8为例,按照下面图片顺序依次学习: applet ,awt,beans,io,lang,math,net,nio,rmi,security,sql,text,tim ...

  4. JDK源码学习-基础

    JDK源码学习 目录 基础 1. 安装 1.1 下载JDK 1.2 配置环境变量 1.3 验证 2. 简单的程序 2.1 编写代码 2.2 编译文件 2.3 执行类 3. java基本类型 基础 1. ...

  5. JDK源码学习笔记——Integer

    一.类定义 public final class Integer extends Number implements Comparable<Integer> 二.属性 private fi ...

  6. JDK源码学习路线~每天学一点~每天进步一点点

    很多java开发的小伙伴都会阅读jdk源码,然而确不知道应该从哪读起.以下为小编整理的通常所需阅读的源码范围. 标题为包名,后面序号为优先级1-4,优先级递减 1.java.lang 1) Objec ...

  7. 【JDK源码】java.io包常用类详解

    看完java.io的JDK源码,在网上发现一篇关于java.io中的类使用的文章总结的很全面,看完之后在原文的基础上加了一些自己的总结如下构成了本篇文章.原文地址 一.Java Io流 1. Java ...

  8. 非常实用,IDEA 搭建JDK源码学习环境(可修改+断点+笔记)

    点击关注公众号,实用技术文章及时了解 来源:chenxiao.blog.csdn.net/article/details/104369824 在学习JDK源码的时候,自然少不了代码的调试. 阅读与调试 ...

  9. JDK源码学习笔记——String

    1.学习jdk源码,从以下几个方面入手: 类定义(继承,实现接口等) 全局变量 方法 内部类 2.hashCode private int hash; public int hashCode() {i ...

最新文章

  1. 电镀面积计算机公式,电镀面积计算法.pdf
  2. 【mongoDB实战】mongo对某个键添加索引
  3. 运行一个程序时如何打印出执行程序的时间
  4. 给与用户建立dblink的权限_网络安全 之 NTFS安全权限
  5. 看懂 IPv6+,这篇就够了
  6. OpenStack不行了吗?悉尼峰会,OpenStack的白城反击战?
  7. matlab图像处理模板,求助,数字图像处理模板匹配
  8. 苹果允许员工公开讨论薪资引热议...
  9. 计算机教育是核心期刊吗2020,重磅!2020年中国科技核心期刊目录,正式发布!...
  10. 【从零开始的OpenGL学习】1. 配置OpenGL,绘制最简单的一个三角形,HelloWorld(学习笔记)
  11. 剑指 offer:变态跳水台
  12. 一文搞懂vim复制粘贴
  13. NYOJ 题目772 数独
  14. freeCAD part工作台,两个物体做合集相加的布尔组合先后顺序区别
  15. Altium AD20整板放置GND过孔、批量放置GND过孔/缝合孔
  16. coturn mysql_Coturn / turnserver:错误437:不匹配的分配:错误的事务ID(WebRTC)
  17. 基于深度强化学习的机器人运动控制研究进展 | 无模型强化学习 | 元学习
  18. Deep learning for sensor-based human activity recognition: overview, challenges and opportunities
  19. 记事本编写的html乱码,记事本编写的HTML文件,用浏览器打开乱码
  20. 不均衡样本权重的计算

热门文章

  1. 抽象编程语言(APL)是什么?
  2. shellcode xor编码/解码[2]
  3. 优化MySQL的数据库性能的八种方法
  4. 求Fibonacc数列中大于t(t3)的最小一个数 例 带入1000输出1597
  5. python时间函数详解_Python 日期的转换及计算的具体使用详解
  6. Spring中的事务回滚 网上比较不错的文章
  7. 对今天下午的工作内容的反思
  8. SpringBoot应用场景启动器
  9. Hadoop入门基础教程 Hadoop之单词计数
  10. 5万能搞定百平家装主材、家具、家电吗?