`
tang9140
  • 浏览: 33257 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java对byte,short,char,int,long运算时自动类型转化情况说明

 
阅读更多

大家都知道,在进行运算时,java会隐式的自动进行类型转化,那么有哪些情况会进行转化呢?总结如下:

一、算术运算符

单目运算符:+(取正)-(取负) ++(自增1) --(自减1)

1.1 +(取正)-(取负)

当操作数是byte,short,char时,会自动转化为int类型;返回结果为int。

当操作数是int,long时,不转化,原来是啥类型,还是啥类型。

1.2++(自增1)--(自减1)

不管操作数是啥类型,不转化。


双目运算符:+ - * / %(取余)

1.3+ - * / %(取余)

当两个操作数中没有long类型时,两个操作数中非int类型会先自动转换为int类型,再参与运算,返回结果为int;

当两个操作数中含有long类型时,两个操作数中非long类型会自动转换为long类型,再参与运算,返回结果为long;


二、位运算符

位运算符:&(与)、|(或)、^(异或)、~(非)、<< (带符号左移)、 >>(带符号右移)、 >>> (无符号右移)

2.1 &(与)、|(或)、^(异或)

与1.3情况相同

2.2 ~(非)

与1.1情况相同

2.3<< (带符号左移)、 >>(带符号右移)、 >>> (无符号右移)

与1.1情况相同


总结

虽然上面列出这么多种情况,但归纳下不难记住。

即:除了自增加自减不进行转化外,其它情况都是无long型时,所有非int类型转成int类型;有long类型时,都转成long类型



版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    JAVA基础之java的移位运算

    因为你知道Java 在对表达式求值时,将自动把这些类型扩大为 int 型,而且,表达式的值也是int 型。对byte 和short类型的值进行移位运算的结果是int 型,而且如果左移不超过31位,原来对应各位的值也不会丢弃。但是,...

    Java Number & Math 类.pdf

    Java Number类是Java中的一个抽象类,它是所有数值类型的超类,包括整数、浮点数和大数。它提供了一组用于操作数值类型的方法,如转换、比较、算术运算等。 二、Java Number类提供了哪些基本的数字操作? Java ...

    JAVA8大数据类型.pdf

    不同类型数据间的优先关系如下: 低---------------------------------------------&gt;⾼ byte,short,char-&gt; int -&gt; long -&gt; float -&gt; double 运算中,不同类型的数据先转化为同⼀类型,然后进⾏运算,转换规则如下: ...

    Java就业面试笔试题资料-264道.zip

    Java 有8种基本数据类型: byte int short long double float Boolean char byte int short long 都属于整数类型. Double float 属于浮点类型. Boolean 为布尔类型 Char 为字符型 String 不是基本数据类型.它定义的...

    Java的8大基本数据类型.pdf

    的8⼤基本数据类型 ⼤基本数据类型 Java8⼤基本数据类型 ⼤基本数据类型 byte(字节型)、short(短整型)、int (整型) 、long(长整型) float(单精度浮点型)、double(双精度浮点型)、boolean(布尔型)、char(字符...

    Java基础面试题.doc

    Java中的基本数据类型只有8个:byte、short、int、long、float、double、char、boolean;除了基本类型(primitive type)和枚举类型(enumeration type),剩下的都是引用类型(reference type)。 2、float f=3.4;...

    java+基本数据类型+详细介绍+资源合集

    java基本数据类型 ...八类基本数据类型:byte 、short 、int 、long,float 、 double,char,boolean 本资源里面详细介绍了关于java的基本数据类型的分类定义以及使用方法等,有需要的朋友可以下载使用。

    Java面试宝典(传说中的葵花宝典).doc

    由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。 对于short s1 = 1; s1 += 1;由于 += 是java语言规定的运算符,java编译器会对它进行特殊...

    2.Java基础语法.ppt

    类型的优先级别:byte,short,char,int,long,float,double (低–高) 右&gt;左–强制类型转换 右&lt;左–自动转换 右=左–不用转 三、运算符: 算术运算符: +,-,*,/,%,++,– 赋值运算符:= 关系运算符: &gt;,&lt;,&gt;...

    整理后java开发全套达内学习笔记(含练习)

    byte &gt; short &gt; int &gt; long &gt; float &gt; double char 」 注意:默认类型转换(自动类型提升)会丢失精度,但只有三种情况: int&gt;float; long&gt;float; long&gt;double. 看一下他们的有效位就明白。 二进制是无法精确的...

    java基础入门教程

    微 软 总 裁 比 尔 ·盖 茨 在 悄 悄 地 观 察了 一 段 时 间 后 ,不 无感 慨 地 说 :"Java是 长 时 间 以 来 最 卓 越 的 程序 设 计 语 言 ",并确 定 微软 整 个 软 件 开 发 的 战 略 从 PC 单 机 时 代 向 着 以...

    java 面试题 总结

    基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 3、int 和 ...

    JAVA面试题最全集

    1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出...

    【02-数据类型与运算符】

     –整型包括:byte short int long(广义的整型包括char型)  –在内存中各占:1,2,4,8个字节, 各有各的取值范围,略记一下。  •在定义long 类型时 必须在数字后面加L,  •整数常量有三种表示方式: 十进制,八...

    关于JAVA面试的100题及其答案

    基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 3、int 和 ...

    超级有影响力霸气的Java面试题大全文档

     基本数据类型包括byte、int、char、long、float、double、boolean和short。  java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 6、int...

    java经典面试2010集锦100题(不看你后悔)

    C) 程序能通过编译,运行时将打印出0/0,因为在Java中int型变量day和month默认为0。 D) 以上说法都不正确。 题目10:c 下面关于继承的描述正确的一项是:(选择1项) A) 子类继承父类,那么子类将继承父类的所有...

    c# 加密和解密相关代码

    本实例实现时主要用到了string 类的ToCharArray 方法和Convert 类的ToChar 方法,下面分别对它们进行 详细介绍。 (1)string类的ToCharArray 方法 string类的ToCharArray 方法用来将字符串中的字符复制到Unicode ...

    进销存系统文档作业例子

    引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始...

Global site tag (gtag.js) - Google Analytics