<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 9  文章 - 21  trackbacks - 0
    <2008年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(1)

    隨筆分類(9)

    隨筆檔案(9)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    第 4 天的問題 -- 眼花繚亂

    它又會打印出什么呢?

    
    public class Elementary{
        public static void main(String[] args){
            System.out.println(12345 + 5432l);
        }
    }
    
    

    第 4 天問題的解答

    這個題看起來似乎太簡單了。結果不就是66666嗎?

    遺憾的告訴你,結果是17777。

    原因

    事物往往有別于它的表象。就以這個問題為例,它并沒有打印出我們想要的輸出。請仔細觀察 + 操作符的兩個操作數, 我們是將一個int類型的12345加到了long類型的5432l上。請注意左操作數開頭的數字1和右操作數結尾的小寫字母l之間的細微差異。 數字1的水平筆劃(稱為"臂(arm)")和垂直筆劃(稱為"莖(stem)")之間是一個銳角,而與此相對照的是,小寫字母l的臂和莖之間是一個直角。

    解決辦法

    System.out.println(12345+5432L);
    

    用大寫的L替換小寫字母l。

    第 4 天問題的總結

    在你大喊"惡心!"之前,你應該注意到這個問題確實已經引起了混亂,這里確實有一個教訓: 在long型字面常量中,一定要用大寫的L,千萬不要用小寫的l。這樣就可以完全掐斷這個謎題所產生的混亂的源頭。

    相類似的,要避免使用單獨的一個l字母作為變量名。例如,我們很難通過觀察下面的代碼段來判斷它到底是打印出列表l還是數字1。

    //不良代碼-使用了l作為變量名
    List l = new ArrayList<String>();
    l.add("Foo");
    System.out.println(1);
    

    也許當初允許用小寫的l來編寫long型字面常量本身就是一個錯誤。


    今天的問題

    下面的程序是對兩個十六進制(hex)字面常量進行相加,然后打印出十六進制的結果。這個程序會打印出什么呢?

    public class JoyOfHex {
        public static void main(String[] args) {
            System.out.println(Long.toHexString(0x100000000L + 0xcafebabe));
        }
    }
    
    posted on 2008-05-17 00:33 李四飛刀 閱讀(1275) 評論(2)  編輯  收藏 所屬分類: 每日一題

    FeedBack:
    # re: 第 5 天: 解答 -- 眼花繚亂, 問題 -- 16進制的趣事 2008-05-17 17:09 ztc
    哈哈,我的確喊惡心了,不過說得有道理!  回復  更多評論
      
    # re: 第 5 天: 解答 -- 眼花繚亂, 問題 -- 16進制的趣事 2008-05-26 14:03 懶人
    要都是那么寫,調bug都得得近視~~  回復  更多評論
      
    主站蜘蛛池模板: 亚洲黄色在线视频| 一本色道久久综合亚洲精品| 亚洲视频在线免费播放| 久久久久久一品道精品免费看| 亚洲一区二区三区影院| aaa毛片免费观看| 国产成人精品日本亚洲网站| 国产一区二区三区免费观看在线| 亚洲人成人77777网站| 人人揉揉香蕉大免费不卡| 亚洲AV无码一区二区乱孑伦AS | 中文字幕人成无码免费视频| 亚洲日韩中文字幕| 欧美a级成人网站免费| 亚洲AV日韩AV永久无码色欲| 免费成人av电影| 美女被免费网站91色| 亚洲国产综合精品中文第一区 | 亚洲精品动漫免费二区| 韩国免费三片在线视频| 国产偷国产偷亚洲高清在线| 亚洲片国产一区一级在线观看| 免费播放在线日本感人片| 亚洲国产人成在线观看| 国产免费拔擦拔擦8x| 日韩在线视频线视频免费网站| 亚洲精品高清国产一线久久| 84pao国产成视频免费播放| 亚洲永久在线观看| 亚洲伊人久久综合影院| 3d动漫精品啪啪一区二区免费| 亚洲中文字幕久久久一区| 亚洲AⅤ无码一区二区三区在线| 最近中文字幕免费大全| 亚洲Av高清一区二区三区| 亚洲成人高清在线| 中国xxxxx高清免费看视频| 亚洲av成人一区二区三区在线播放| 亚洲中文字幕第一页在线| 亚洲视频在线观看免费视频| 曰批全过程免费视频观看免费软件 |