Java中没有Int32,Int64,,java中只有int,short,long

Java中int就代表Int32 ,short就代表Int16,long就代表Int64

首先,几个基本的关键字:

Int16 = short, 占2个字节. -32768 ~ 32767

Int32 = int, 占4个字节. -2147483648 ~ 2147483647

Int64 = long, 占8个字节. -9223372036854775808 ~ 9223372036854775807

这样, 看起来比short,int,long更加直观些

MSDN中说int就是Int32的别名,是等价的,short,long同理也是别名

详解Int32

为什么Int32 就等于 int, 很简单,在VS中写 int a=1;  选中a , F12转到定义就是System.Int32.

Int32就是代表一共能存储2^32次方,一共有42,9496,7296个数

从-21,4748,3648 到 +21,4748,3647 为止,为什么正数比负数小一个数,因为0占了一个数

所以Int32的最大数并不是42,9496,7296,而是(2^31)-1=+21,4748,3647,为什么是31次方,因为是有符号整型,最高位要空出来判断是不是负数,所以是31次方,-1是因为0占了一个数。

但是一共还是能存储2^32次方 既42,9496,7296个数,因为有正负数,其实一样的,还是2的32次方个数

如图:

所以Int16和Int64也是同理的。只不过是把2^32换成2^16或者2^64而已....

无符号整形Uint32

上面说的都是有符号整数,既signed integer, 就是可以储存正负数的,而无符号整数就是只能存储正数,既unsigned integer

在C#中用Uint16,UInt32,Uint64等表示

跟上面同理

ushort =UInt16

uint =UInt32   ,0 ~ 4364967295

ulong =UInt64

UInt32和Int32一样 ,也是代表一共能存储2^32次方,一共有42,9496,7296个数

但是因为只有正数和0,所以最大值为4364967295, 既2^32-1,-1是因为0占了一个数

溢出会如何

更进一步,尝试Int32 a=Int32.MaxValue+1 , 会不会报错?

答案是不会,至少在VS中不会,编译器会自动把a赋值成-21,4748,3648,既最小数值,若加2,则为-21,4748,3647,依次递加。。。

同理,UInt32 a=UInt32.MaxValue+1 ,a就是0,既,若+2,a=1,依次递加。。。

https://www.cnblogs.com/EEEE1/p/8098876.html

https://www.cnblogs.com/raytheweak/p/7290617.html

C#中int short Int16 Int32 Int64区别的更多相关文章

  1. C#程序中从数据库取数据时需注意数据类型之间的对应,int16\int32\int64

    private void btn2_Click(object sender, RoutedEventArgs e)         {             using (SqlConnection ...

  2. C# 之 Int16 Int32 Int64 的区别

    Int16 值类型表示值介于 -32768 到 +32767 之间的有符号整数. Int32 值类型表示值介于 -2,147,483,648 到 +2,147,483,647 之间的有符号整数. In ...

  3. Int16, Int32, Int64 范围

    Int16, 等于short, 占2个字节. -32768 32767 Int32, 等于int, 占4个字节. -2147483648 2147483647 Int64, 等于long, 占8个字节 ...

  4. Int16 Int32 Int64

    数据类型占多大空间 Int16, 等于short, 占2个字节. -32768 32767 Int32, 等于int, 占4个字节. -2147483648 2147483647 Int64, 等于l ...

  5. int16, int32, int64等类型说明

    Int16  相当于 short  占2个字节   -32768 ~ 32767 Int32  相当于 int      占4个字节   -2147483648 ~ 2147483647 Int64  ...

  6. oracle中int类型和number类型区别

    INT类型是NUMBER类型的子类型.下面简要说明:(1)NUMBER(P,S)该数据类型用于定义数字类型的数据,其中P表示数字的总位数(最大字节个数),而S则表示小数点后面的位数.假设定义SAL列为 ...

  7. Oracle中INT、FLOAT、NUMBER区别

    Oracle里的int等于number(长度,0) float也类似,number要定义小数部分的位数,而float不用定义后边小数有几位  因为NUMBER要确定长度,后边确定小数位. 所以,如果不 ...

  8. PHP 中 int 和 integer 类型的区别

    半夜整理东西,发现一个以前没留意到的小问题. function show($id) : int { return $id; } function show($id) : integer { retur ...

  9. C# 与数据库中字段类型 Int16(short), Int32(int), Int64(long)的取值范围、区别 。string长度

    一开始看到Int16, Int32, Int64这三种类型就觉得有点怪, 为什么要整个数字结尾的, 挺怪的. 昨天互相想到, ms这么干就是想让大家一眼就知道这个数据类型占多大空间吧. Int8, 等 ...

随机推荐

  1. uoj60 怎样提高智商

    题意:你需要构造n个四项选择题.格式为:问在前i个问题中选了几个hi字母? 输出有最多正确答案的构造方案. 标程: #include<cstdio> using namespace std ...

  2. js 移动端点击复制字符串

    function copyStr(val) { //val 是要复制的字符串 var input = document.createElement("input"); input. ...

  3. 最后的egret

    坚持做一件事真的好难~ 决定重新写博客的时候想着一定要坚持一个周一篇,然而.... 年后上班老板找我的第一件大事:以后公司的棋牌产品不会有大的动作了:公司PHP(内部用的运营后台)的小姐姐休产假了,我 ...

  4. PAT甲级——A1078 Hashing

    The task of this problem is simple: insert a sequence of distinct positive integers into a hash tabl ...

  5. tar指令集合

    把常用的tar解压命令总结下,当作备忘: tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个, ...

  6. 《DSP using MATLAB》Problem 8.31

    代码: %% ------------------------------------------------------------------------ %% Output Info about ...

  7. 《DSP using MATLAB》Problem 8.11

    代码: %% ------------------------------------------------------------------------ %% Output Info about ...

  8. <每日一题>题目17:super()继承相关的面试题

    class A(object): def go(self): print("go A go!") def stop(self): print("stop A stop!& ...

  9. 2019-2-13-Latex-论文elsevier,手把手如何用Latex写论文

    title author date CreateTime categories Latex 论文elsevier,手把手如何用Latex写论文 lindexi 2019-02-13 10:38:20 ...

  10. odoo:Actions

    actions定义了系统对于用户的操作的响应:登录.按钮.选择项目等. 一:窗口action(ir.actions.act_window ) 最常用的action类型,用于将model的数据展示出来. ...