`
包su
  • 浏览: 31189 次
  • 来自: 南京
社区版块
存档分类
最新评论

java中的类型转换

    博客分类:
  • java
 
阅读更多

可能我们只是留意了一个int代表的是整数,占用了4个字节,而float可以代表小数,而double呢,好吧,能代表更精确的小数,那到底有多精确呢(“如果,你感觉你的程序对精确度要求很高,那么你可以使用double”,我们往往也都是那么一说)

primitive类型之间的转换?
好的,一个int占用4个字节,而一个byte占用了1个字节
当int转到byte,低位的8传给byte
而byte转到int呢,因为byte占1个,而int占4个,那么直接将数值赋过去就行了,然后,高位补0
请注意上面的一句话,没错,那是错误的,它也是所有梦魇的开端
如果你还认为是的对,那么你可以看看下面的实验

实验1:
byte a = (byte) 0xf0;
int b = a;
System.out.println(Integer.toBinaryString(b));
你将会看到:11111111111111111111111111110000,一共32个数字

实验2:
byte a = (byte) 0x0f;
int b = a;
System.out.println(Integer.toBinaryString(b));
System.out.println(Integer.toBinaryString(b).length());
你将会看到:1111,一共4个数字(为什么不是32,因为:前面都是0,不给你展示了)

那么,我们得出了一个结论:
byte到int转换时,
如果byte的最左边的数字是0,那么转换后的int的左端全是0,
否则,全是1
上述结论也适应于其他 小类型 转换到 大类型
我们在大学的时候就学过了,其中还学到什么补码等东东

你容易忽视的一个例子:
我有两个byte,分别是a和b,我想将它们相加,然后赋予给另外一个byte c
你可能会写:byte c = a + b;
然后eclipse告诉你:Type mismatch: cannot convert from int to byte
则:两个byte数相加后变成了一个int?是:a和b分别转成int,然后是两个int相加

分享到:
评论

相关推荐

    Java中类型转换.pdf

    Java中类型转换.pdf 学习资料 复习资料 教学资源

    java 强制类型转换示例

    java 强制类型转换示例 java 强制类型转换示例 java 强制类型转换示例

    26.java自动类型转换.zip

    26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型转换.zip26.java自动类型...

    27.java强制类型转换.zip

    27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型转换.zip27.java强制类型...

    Java 多态中的类型转换

    Java 多态中的类型转换

    java中数据类型转换

    java中数据类型转换 收藏 java中数据类型转换 1如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String],[int radix]); 2). int i =...

    常见java中数据类型之间的转换.txt

    常见java中数据类型之间的转换.txt常见java中数据类型之间的转换.txt常见java中数据类型之间的转换.txt

    java中String类型转换方法.pdf

    java中String类型转换方法.pdf

    25.java类型转换.zip

    25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java类型转换.zip25.java...

    Java基本类型转换.doc

    Java 基本类型转换 Java 基本类型转换 Java 基本类型转换

    java jni c++ 类型转换

    java jni 与 c++ 数据类型转换 及调用

    JAVA图片类型转换

    JAVA图片类型转换 实例. 如果需要在java中将 bmp 的图片转成 gif 格式的,可以参考一下这个例子。

    hibernate和java类型转换

    hibernate和java类型转换,hibernate和java类型转换

    java类型转换参考大全

    记录了JAVA各类型的转换

    深入分析java中的类型转换

    类型转换分为强制手动类型转换和隐式自动类型转换 (1) 基本数据类型 (2) 引用数据类型 (3) 强制类型转换 (4) 包装数据类型

    Java中各个数据类型之间的转换

    由于实际开发中这样的类型转换很多,所以Java语言在设计时,没有为该操作设计语法,而是由JVM自动完成。 转换规则 从存储范围小的类型到存储范围大的类型。 具体规则为: byte→short(char)→int→long→float→...

    java 数据类型转换

    java 类型转换 二进制,八进制,十六进制之间的转换

    Java字符串类型转换

    Java各种字符串之间的转换,各种类型转换。

    java 类型转换器

    类型转换器 1.Object to Long 2.Object to Integer 3.Object to Double 4.Object to String

Global site tag (gtag.js) - Google Analytics