zoukankan      html  css  js  c++  java
  • 一个简单却容易忽略的小坑(基本数据类型转换)

    基本数据类型转换相信大家都能够信手拈来,讲起来也是口若悬河,滔滔不绝。

    那么,请看:

    byte number1 = 30;
    byte number2 = 10;
    byte number3 = number1 + number2;
    System.out.println(number3);


    看起来很和谐的一段代码,对于刚入Java的新手来说简直不要太喜欢,简单易懂。
    其实,已经错了,当两个byte类型的数据相加的时候返回值真的是一个byte类型的值么?
    讲到这边要还是认为是byte类型的,可以点击右上角的 × 然后转行吧,Java可能不适合你,哈哈,开玩笑的!!
    当然,不信你可以去ideal敲一下试试,具体返回值是啥一试便知道,我就不说了。
    今天要讲的是为啥会这样:
    其实也很简单,当两个byte类型的变量开始运算的时候,系统会直接先将其转化成int类型再做运算,所以输出来的结果可想而知是一个int类型的返回值。
    但有些人说,我是杠精,我就想要返回值是byte咋搞?
    简单啊,强转呗!
    byte number3 =(byte) (number1 + number2);
    先运算括号中的加法,结果强转为byte类型。。。。。。

    废话扯了这么多,真理就一句话,哈哈,喝水去了,感觉有辣么一丝丝收货的,别忘记点个赞,拜拜!!
     
  • 相关阅读:
    @@IDENTITY 存储过程
    ASP.NET的Cookie和Session
    数据格式设置表达式
    DataTable类(MSDN)
    用静态变量代替appliction
    C cgi url 编码解码问题
    C#视频头操作
    c#网页抓取
    c语言字符串分隔
    CGI c 上传文件
  • 原文地址:https://www.cnblogs.com/1355861728--qqcom/p/12450666.html
Copyright © 2011-2022 走看看