是 2,147,483,647。最简单的记忆方法是通过纹身。
Integer.MAX_VALUE
即可。 - Tim我能想到的最正确的答案是 Int32.MaxValue
。
如果你认为在十进制下这个值过于难记,可以尝试在二进制下表示: 1111111111111111111111111111111
11111111111111111111111111111111
作为二进制数,则仍为正数(在二进制中表示负数的例子是 -1
)。只有当它表示一个32位2补数时,这个比特序列才是负数 :) - BlueRaja - Danny Pflughoeft如果你能记住整个圆周率,那么你要找的数字位于Pi小数位的第1,867,996,680至1,867,996,689个位置。
数字串2147483647出现在Pi的第1,867,996,680个小数位。3.14......86181221809936452346214748364710527835665425671614...
这是10位数字,就像一个电话号码一样(假设您在美国)。214-748-3647。我不建议拨打它。
INT
而非 VARCHAR
的人。 - Zarel不要将其视为一个庞大的数字,尝试将其分解并寻找相关联的想法,例如:
以上适用于最大的负数; 正数是那个减一。
也许上述的分解对您来说并没有更加容易记忆(它几乎没有什么激动人心的内容!),但希望您能够想出一些更好的想法!
2^(31!)
还是(2^31)!
? - Alderath32位最大的负值为:-2147483648
(1 << 31)
32位最大的正值为:2147483647
~(1 << 31)
助记词:"喝醉了又犯病"
drunk ========= Drinking age is 21
AK ============ AK 47
A ============= 4 (A and 4 look the same)
horny ========= internet rule 34 (if it exists, there's 18+ material of it)
21 47 4(years) 3(years) 4(years)
21 47 48 36 48
无论如何,使用以下正则表达式(它可以确定字符串是否包含非负十进制整数且不大于Int32.MaxValue)
[0-9]{1,9}|[0-1][0-9]{1,8}|20[0-9]{1,8}|21[0-3][0-9]{1,7}|214[0-6][0-9]{1,7}|2147[0-3][0-9]{1,6}|21474[0-7][0-9]{1,5}|214748[0-2][0-9]{1,4}|2147483[0-5][0-9]{1,3}|21474836[0-3][0-9]{1,2}|214748364[0-7]
也许这会对你有所帮助。
这就是我记得 2147483647
的方式:
将它们横向排列:
214_48_64_
and insert:
^ ^ ^
7 3 7 - which is Boeing's airliner jet (thanks, sgorozco)
现在你有了2147483647。
希望这至少有点帮助。
2^(x+y) = 2^x * 2^y
2^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
所以,2^31(有符号整数最大值)是2^30(约10亿)乘以2^1(2),约为20亿。而2^32是2^30*2^2或约为40亿。即使在2^64左右 (误差增长到约15%)的情况下,这种近似方法也足够精确。
如果您需要精确的答案,则应使用计算器。
便捷的字对齐容量估计: