前言

今天一个同事问我,数据库里面的某表如果用int做PK,那该表最多可以放多少记录,我说简单啊,就是2^31(正数),跟.NET的Int32.MaxValue一样,约等于20亿(正数)吧。同事说,那具体什么数字呢?这就难倒我了,因为我从来不记住具体某个数字,就算是Pi我也只记住3.1415926,我甚至曾经连自己的手机号码都没记住,打电话给朋友让他根据来电显示告诉我我手机号码。。。

我能记住这个值是约等于20亿是因为在上一个公司的系统中,单表超过30亿。。。所以我们不用int。。。

看法

虽然我知道.NET有Int32.MaxValue,但我想知道有没有简便易记的办法,虽然我觉得记住这个数字没啥特别的用途。。。

Google大神

Google是一个伟大的发明,StackOverflow是一个屌丝程序员的逆袭故事。。。它告诉了我一些好玩的答案:http://stackoverflow.com/questions/94591/what-is-the-maximum-value-for-a-int32

质疑

毫无疑问,很多人质疑提问者为什么需要记住这个数字,不过今天我们关心的,是不同的程序员的不同记忆方法。

答案1-标准答案

(2^31)-1 = 2,147,483,647,这就是“标准”答案。最小的值是-2,147,483,648。

答案2-纹身

一个程序员说,或许你可以弄个纹身,当然了,这只是一个西方的玩笑,相信中国没多少程序员愿意把这一点数字刻印章身上,除非是你的女神的生日或者三维。。。

搞笑的是,一个回复者说最小值是-2,147,483,647。。。。然后被其他回复者指出应该是-2,147,483,648,然后该回复者说:天啊,那我的纹身该怎么办。。。换个例子,你刻了女神的生日站身上,如果分手了,换了个女朋友,你怎么办。。。

答案3-找茬

1. 一个码农说,敲2,147,486,647 这个值还不如int.MaxValue,因为当你输入int.M,自动完成就有最大值了。。。

2.另外一个码农说,用二进制,那就是1111111111111111111111111111111,你是否觉得脑袋更痛。。。

答案4-Google

一个码农说,随便一个搜索引擎一输入就有了。。。(跟我的想法真像。。。)

答案5-有意义的句子

这个做法我最喜欢:

a=1,b=2,c=3,d=4,e=5,f=6,g=7,h=8,i=9

Boys And Dogs Go Duck Hunting, Come Friday Ducks Hide
2    1   4    7  4    8        3    6      4     8

不过这是使用英文的程序员的做法,对使用中文的程序员来,记住这些单词,或许比记住这串数字更难。。。

答案6-简单有效的分段

我比较喜欢这个简单的做法

2^(x+y) = 2^x * 2^y2^10 ~ 1,000
2^20 ~ 1,000,000
2^30 ~ 1,000,000,000
2^40 ~ 1,000,000,000,000
(etc.)2^1 = 2
2^2 = 4
2^3 = 8
2^4 = 16
2^5 = 32
2^6 = 64
2^7 = 128
2^8 = 256
2^9 = 512

有趣的回复是:“硬盘厂商也是这样干的”。。。笑喷

答案7-常见

2GB

没错,就是大家日常所见的空间/大小。容易记吧?

答案8-计算器

拿出你的计算器,切换到Hex,输入“7FFFFFFF”。

另外一个码农说,为什么不直接输入2^31。。。

答案9-电话号码

美国和澳洲的电话号码位数都是10位,可以这样记。中国大城市固定电话区号+号码也是10位,把它当成电话边可以记住了。

某蛋痛码农还校验了一下该电话号码的真伪。。。另外一个码农说:你怎么把我的电话号码给公开了。。。

答案-你呢?

你觉得有啥好办法记住这个数字呢?

转载于:https://www.cnblogs.com/unruledboy/p/HowToRememberIntMaxValue.html

怎样记住Integer的最大值(有趣的思维和搞笑的回答)相关推荐

  1. CSP难度的经典题目/有趣的思维题选讲(一)

    引言 这里讲到的难题是一部分非常典型的题目,但并不是所有.因此这并非是一个全面的知识列表,而只适合提高组同学用来提升能力和拓展视野. 这篇文章在很多地方讲述的不够详细和严谨,因为它的作用并非是题解,而 ...

  2. 上周热点回顾(7.1-7.7)

    热点随笔: · 毕业三年(ZhugeKM) · 又到一年裁员季(吐槽-) · WPF仿360卫士9.0界面设计(涂剑凯) · 领导.员工.选择.矛盾(Jimmy Zhang) · 浅谈并发与并行(一) ...

  3. 上周热点回顾(7.1

    热点随笔: · 毕业三年(ZhugeKM) · 又到一年裁员季(吐槽-) · WPF仿360卫士9.0界面设计(涂剑凯) · 领导.员工.选择.矛盾(Jimmy Zhang) · 浅谈并发与并行(一) ...

  4. JDK源码分析-Integer

    Integer是平时开发中最常用的类之一,但是如果没有研究过源码很多特性和坑可能就不知道,下面深入源码来分析一下Integer的设计和实现. Integer: 继承结构: -java.lang.Obj ...

  5. String to Integer (atoi) leetcode java

    题目: Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input ca ...

  6. 由自动装箱和拆箱引发我看Integer源码

    背景和问题 在看别人整理的资料时,看到如下一段代码: package com.sitech.test;/** * 自动装箱和拆箱 jdk1.6 * @author liaowp * */public ...

  7. 重构碎片化知识_知识碎片化时代,如何妙用思维导图,提高你的学习效率(含福利)...

    这里是[科学学习法]的第03篇. 慧心优学:不忘初心,与您一道关心教育,关心未来! 随着移动互联网的快速发展,各种付费知识产品也层出不穷,加上工作本来就繁忙的你,原本就没有多少时间静下心来好好读书,于 ...

  8. android Integer类的toString函数的使用

    今天,简单讲讲android里如何使用Integer类的toString函数.  这个其实很简单,就是将整数转成字符串.不过之前一直使用的是String.value()来进行转换的.后来在为网上查 ...

  9. 常量缓存与integer比较_Integer缓存范围到底是多少?

    本文主要大致思路为: 不管从工作中还是面试,这篇文章都应该好好看完,本人认为是非常有用的. 案例 Integer是基本类型int的封装类.平时不管是入坑多年的小伙伴还在入坑路上的小伙伴,都应该知道的使 ...

最新文章

  1. 你必须会的 JDK 动态代理和 CGLIB 动态代理
  2. 浅析py-faster-rcnn中不同版本caffe的安装及其对应不同版本cudnn的解决方案
  3. java常见_Java 常用类
  4. c语言中 文件的字符串输入函数是6,【C语言】文件操作及输入输出格式(文件常用的库函数)...
  5. .NET6正式版将近,70%开发者或面临技术断层!
  6. Win32 一个helloworld对话框
  7. redis循环键_Redis的并发控制
  8. JNI_Android项目中调用.so动态库实现详解【转】
  9. PL/SQL详细的安装和配置教程(附带网盘下载链接,以及PL/SQL的基本操作与注意事项)
  10. 滴滴翻译技术探索与实践
  11. 抖音小程序开发 唤起收银台支付(可以选择支付宝APP支付或微信H5支付)
  12. 【2022 年第十二届 MathorCup杯数学建模】D 题 移动通信网络站址规划和区域聚类问题 赛后总结、论文及代码
  13. 小葵花妈妈课堂开课了:《ThreadLocal 浅析》
  14. VirtualBox 无法安装 已删除了注册表及文件
  15. Mac下浏览器超实用快捷键
  16. 计算机无法屏幕亮度,win7电脑屏幕亮度无法调节怎么办?调节屏幕亮度的方法...
  17. 程序员笔试之猿辅导招聘2021 编程题收集整理(八)
  18. 有机晶体数据库_福利干货 | 对晶体学数据库来个大盘点吧!
  19. 人的大脑就是量子计算机吧,新发现!人类大脑其实就是台量子电脑
  20. [ZUCC 英语周测]Quiz B-3-7

热门文章

  1. 火车头采集发布到mysql_[火车头教程]火车头采集:mysql入库模板的编写数据库发布模块编辑器...
  2. 详解:MySQL自增ID与UUID的优缺点及选择建议,MySQL有序uuid与自定义函数实现
  3. php数组填空题,php数组练习十六道题
  4. docker之ubuntu开启sshd登陆服务
  5. Python中数组切片的用法详解
  6. JavaFX UI组件——默认皮肤文件,modena.css
  7. CAD 按F8 正交卡住解决方法
  8. 腾讯网迷你版如何关闭
  9. 英语中10类对女人的搞笑称呼
  10. PS基础---收缩与羽化