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

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

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

    布衣王子

    Email:roose2008@gmail.com QQ:79212131

    我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法

    一個java初學(xué)者在看大連理工大學(xué)出版社出版的書(書名是《java面向?qū)ο蟪绦蛟O(shè)計》)時向我問了下面這樣一個問題。 為什么:
    int x=Character.digit('c', 16);
    System.out.println("x="+x);
    結(jié)果輸出為 F12
    作者楊興凱在不在博客圓,應(yīng)該拉出來打。
    這樣的錯誤也犯,還寫書。我想我也可以寫書了。這也是個小問題,經(jīng)過程序驗證結(jié)果應(yīng)該是12。上面兩句代碼的執(zhí)行過程小弟有些含糊不清,上面的兩句執(zhí)行過程是將c的十進制減去a的十進制然后加上10。
    這個方法是用來做什么的呢?
    雖然小弟要弄清楚了上面的輸出結(jié)果是怎樣出來的,但是我不懂這樣比較后有加又減的到底有什么意義,這個方法在那些地方可能會用到。就連下面的API我也一點也看不懂,難道這個方法是用來做大小寫轉(zhuǎn)換的嗎?能不能舉一個這個方法實際應(yīng)用的實例呢?
    java.lang.Character.digit(char ch, int radix)API


    public static int digit(char ch,
                            int radix)

    返回使用指定基數(shù)的字符 ch 的數(shù)值。

    如果基數(shù)不在 MIN_RADIX <= radix <= MAX_RADIX 范圍之內(nèi),或者 ch 的值是一個使用指定基數(shù)的無效數(shù)字,則返回 -1。如果以下條件中至少有一個為真,則字符是一個有效數(shù)字:

    •  
      • 方法 isDigittrue,且字符(或分解的單字符)的 Unicode 十進制數(shù)值小于指定的基數(shù)。在這種情況下,返回十進制數(shù)值。
      • 字符為 'A''Z' 范圍內(nèi)的大寫拉丁字母之一,且它的代碼小于 radix + 'A' - 10。在這種情況下,返回 ch - 'A' + 10
      • 字符為 'a''z' 范圍內(nèi)的小寫拉丁字母之一,且它的代碼小于 radix + 'a' - 10。在這種情況下,返回 ch - 'a' + 10(這里我一點也看不懂)
      注:此方法無法處理增補字符。若要支持所有 Unicode 字符,包括增補字符,請使用 digit(int, int) 方法。

     

    參數(shù):
    ch - 要轉(zhuǎn)換的字符。
    radix - 基數(shù)。
    返回:
    使用指定基數(shù)的字符所表示的數(shù)值。
    另請參見:
    forDigit(int, int), isDigit(char)
     

    posted on 2008-09-26 12:19 草包書生 閱讀(12437) 評論(7)  編輯  收藏

    評論

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2008-09-26 14:07 Meatball

    把radix進制的字符轉(zhuǎn)為10進制
    int x=Character.digit('c', 16); 是把16進制的c轉(zhuǎn)為10進制=12  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2008-09-26 19:02 mingj

    Integer,Float,Double都有parseXXX方法
    自然Character也不應(yīng)該少這樣的方法

    至于實現(xiàn)原因, api已經(jīng)說的很明白了  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法[未登錄] 2008-09-26 22:53 草包書生

    哎,原來是這樣簡單的一回事,小弟真是孤陋寡聞啊!謝謝了  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2009-12-22 11:08 路過

    Character.digit('c', 16),表示輸出字符'c'代表的16進制數(shù),16進制中a、b、c、d、e、f分別表示為10、11、12、13、14、15,所有這里輸出的是12  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2013-08-25 10:10 itfanr

    @路過
    沒錯~~~~~~~~  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2015-02-27 14:28 陳琪琪

    @Meatball
    不對吧,如果按照你說的那樣的話,那么我把16改成8,結(jié)果應(yīng)該是多少呢?  回復(fù)  更多評論   

    # re: 我被一個初學(xué)者考傻了,關(guān)于java.lang.Character.digit(char ch, int radix)方法 2015-02-27 14:35 陳琪琪

    @陳琪琪
    應(yīng)該是-1  回復(fù)  更多評論   


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     

    導(dǎo)航

    常用鏈接

    相冊

    java的相關(guān)連接

    最新評論

    主站蜘蛛池模板: 国产高清免费观看| 国产资源免费观看| 久久精品国产亚洲AV麻豆王友容| 一级毛片视频免费| 区久久AAA片69亚洲| 中文字幕乱码系列免费| 亚洲大尺度无码无码专区| 亚洲电影免费在线观看| 亚洲国产高清视频在线观看| 国产高清不卡免费在线| 亚洲熟伦熟女专区hd高清| 国产免费小视频在线观看| 污污视频网站免费观看| 亚洲美女又黄又爽在线观看| 久久午夜夜伦鲁鲁片无码免费| 亚洲天堂男人天堂| 人与禽交免费网站视频| 亚洲av综合av一区二区三区 | 亚洲色成人四虎在线观看| 在线a毛片免费视频观看| 黄网站色成年片大免费高清| 成人午夜亚洲精品无码网站| 中文字幕手机在线免费看电影| 亚洲AV综合色区无码另类小说| 永久黄色免费网站| 亚洲sm另类一区二区三区| 在线观看亚洲av每日更新| 999任你躁在线精品免费不卡| 最新国产成人亚洲精品影院| 国产禁女女网站免费看| 久久久久久久久久久免费精品| 久久亚洲精品无码AV红樱桃| 好大好硬好爽免费视频| 一级特黄aaa大片免费看| 亚洲综合区图片小说区| 免费一看一级毛片全播放| 国产真人无码作爱视频免费| 亚洲精品无码日韩国产不卡av| 亚洲永久精品ww47| 中文字幕乱码免费视频| www成人免费视频|