最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

手把手教你JAVA進(jìn)制之間的轉(zhuǎn)換

 更新時(shí)間:2021年08月19日 14:36:35   作者:程序媛 泡泡  
這篇文章主要介紹了Java實(shí)現(xiàn)的進(jìn)制轉(zhuǎn)換,結(jié)合完整實(shí)例形式分析了Java實(shí)現(xiàn)二進(jìn)制、十六進(jìn)制、字符串、數(shù)組等相關(guān)轉(zhuǎn)換操作技巧,需要的朋友可以參考下

1.前言

進(jìn)制也就是進(jìn)位計(jì)數(shù)制,是人為定義的帶進(jìn)位的計(jì)數(shù)方法,類(lèi)似于統(tǒng)計(jì)”正”字,對(duì)于任何一種進(jìn)制,X進(jìn)制,就表示每一位置上的數(shù)運(yùn)算時(shí)都是逢X進(jìn)一

10進(jìn)制 : 逢十進(jìn)一,包含元素 0~9

16進(jìn)制 : 逢十六進(jìn)一,包含元素 0~9 a b c d e f

2 進(jìn)制 : 逢二進(jìn)一,包含 0 和 1

通常情況下: 1byte = 8個(gè)二進(jìn)制位

表示一個(gè)數(shù)字如果用二進(jìn)制來(lái)表示的話(huà),可以寫(xiě)成: 0000 1111

把這8個(gè)位進(jìn)行組合,每3位組合就形成了8進(jìn)制

每4位組合就形成了16進(jìn)制

2.不同進(jìn)制的特點(diǎn)

2進(jìn)制 : 逢二進(jìn)一 , 包含 0和1 , 以0b開(kāi)頭

8進(jìn)制 : 逢八進(jìn)一 , 包含 0~7 , 以0開(kāi)頭

10進(jìn)制 : 逢十進(jìn)一 , 包含元素 0~9

16進(jìn)制 : 逢十六進(jìn)一 ,包含元素 0~9 a b c d e f ,以0x開(kāi)頭

3.進(jìn)制之間的轉(zhuǎn)換

關(guān)于二進(jìn)制的一些數(shù)據(jù)

在這里插入圖片描述

3.1 二進(jìn)制轉(zhuǎn)十進(jìn)制:

需求:計(jì)算二進(jìn)制數(shù)據(jù):0000 1101 對(duì)應(yīng)的十進(jìn)制

結(jié)果:8+4+0+1=13

3.2 十進(jìn)制轉(zhuǎn)二進(jìn)制:

需求:求十進(jìn)制數(shù)字11對(duì)應(yīng)的二進(jìn)制數(shù)

簡(jiǎn)便算法: 11 先拆分成2的次冪元素組成的數(shù), (8+2+1) 然后對(duì)應(yīng)位置改成二進(jìn)制 0000 1011算式計(jì)算:不斷除以2商0為止,取余,倒著寫(xiě),11的結(jié)果:1011

7的結(jié)果0111(讀的時(shí)候先朝右,再朝上的方向讀)

在這里插入圖片描述

3.3 二進(jìn)制轉(zhuǎn)八進(jìn)制:

從低次位開(kāi)始,每3位為一組,產(chǎn)生一個(gè)八進(jìn)制數(shù)字,最高位不足補(bǔ)0

需求:計(jì)算二進(jìn)制數(shù)據(jù)110 0111對(duì)應(yīng)的八進(jìn)制

在這里插入圖片描述

需求:計(jì)算八進(jìn)制數(shù)據(jù)023 0653對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)

在這里插入圖片描述

3.4 十六進(jìn)制轉(zhuǎn)二進(jìn)制:

一個(gè)數(shù)字拆分成4個(gè)數(shù)字

舉例:b->11對(duì)應(yīng)的二進(jìn)制數(shù)1011

3.5 二進(jìn)制轉(zhuǎn)十六進(jìn)制:

四個(gè)一組,轉(zhuǎn)為一個(gè)數(shù)字,以0x開(kāi)始

舉例: 1111->15 ,a在16進(jìn)制代表的是10,依次類(lèi)推,15對(duì)應(yīng)的16進(jìn)制數(shù)就是f

4. 代碼實(shí)現(xiàn)二進(jìn)制與十進(jìn)制互轉(zhuǎn)

java 中也提供了二進(jìn)制和十進(jìn)制的互轉(zhuǎn)方法:

4. 1 十進(jìn)制轉(zhuǎn)二進(jìn)制

 private static void desToBin() {//10進(jìn)制轉(zhuǎn)2進(jìn)制
        String s = Integer.toBinaryString(257);
        System.out.println(s);//100000001
 }

4. 2 二進(jìn)制轉(zhuǎn)十進(jìn)制

Integer.parseInt(String s, int radix)

第一個(gè)參數(shù):要轉(zhuǎn)成十進(jìn)制數(shù)的二進(jìn)制字符串

第二個(gè)參數(shù):指定的進(jìn)制

注意:這里不支持直接使用負(fù)數(shù)的二進(jìn)制碼來(lái)表示負(fù)數(shù),而是要用正數(shù)的二進(jìn)制碼添加負(fù)號(hào)來(lái)表示

    private static void binToDes() {
        int i = Integer.parseInt("-1100101101", 2);
        System.out.println(i);//813
        int i2 = Integer.parseInt("-1100101101", 2);
        System.out.println(i2);//-813
    }

4. 3 練習(xí):

需求:輸入十進(jìn)制整數(shù)轉(zhuǎn)成2進(jìn)制,輸入二進(jìn)制整數(shù)轉(zhuǎn)成十進(jìn)制

package cn.cxy.exec;
import java.util.Scanner;
/*完成十進(jìn)制與二進(jìn)制之間的轉(zhuǎn)換*/
public class Test {
    public static void main(String[] args) {
        //m1();
        m2();
    }
    private static void m2() {
        while (true) {
            System.out.print("輸入整數(shù)的二進(jìn)制碼:");
            String s = new Scanner(System.in).nextLine();
            int a = Integer.parseInt(s, 2);
            System.out.println("對(duì)應(yīng)的十進(jìn)制數(shù)是:"+a);
        }
    }
    private static void m1() {
        while (true) {
            System.out.print("輸入十進(jìn)制整數(shù):");
            int a = new Scanner(System.in).nextInt();
            String s = Integer.toBinaryString(a);
            System.out.println("對(duì)應(yīng)的二進(jìn)制數(shù)是:"+s);
        }
    }
}

5. 二進(jìn)制數(shù)據(jù)在Java代碼中的寫(xiě)法

在Java語(yǔ)法中:二進(jìn)制字面值可以使用 0b 前綴的整數(shù)直接表示:

int a = 0b11001;

byte b = 0b1111111;

// 0b前綴語(yǔ)法不允許直接寫(xiě)負(fù)數(shù)的二進(jìn)制碼,這樣寫(xiě)實(shí)際表示的是正數(shù)128

byte c = 0b10000000; //此處錯(cuò)誤

// 要寫(xiě)byte的最小值-128,需要寫(xiě) 128 的二進(jìn)制碼,并加負(fù)號(hào)

byte d = -0b10000000;

總結(jié)

本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • JAVA 區(qū)分集合和數(shù)組

    JAVA 區(qū)分集合和數(shù)組

    這篇文章主要介紹了JAVA如何區(qū)分集合和數(shù)組,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • 基于Jackson實(shí)現(xiàn)API接口數(shù)據(jù)脫敏的示例詳解

    基于Jackson實(shí)現(xiàn)API接口數(shù)據(jù)脫敏的示例詳解

    用戶(hù)的一些敏感數(shù)據(jù),例如手機(jī)號(hào)、郵箱、身份證等信息,在數(shù)據(jù)庫(kù)以明文存儲(chǔ),但在接口返回?cái)?shù)據(jù)給瀏覽器(或三方客戶(hù)端)時(shí),希望對(duì)這些敏感數(shù)據(jù)進(jìn)行脫敏,所以本文就給大家介紹以惡如何利用Jackson實(shí)現(xiàn)API接口數(shù)據(jù)脫敏,需要的朋友可以參考下
    2023-08-08
  • SpringMvc框架的簡(jiǎn)介與執(zhí)行流程詳解

    SpringMvc框架的簡(jiǎn)介與執(zhí)行流程詳解

    MVC是一種軟件設(shè)計(jì)典范,用一種業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示分離的方法組織代碼,將業(yè)務(wù)邏輯聚集到一個(gè)組件里面,在改進(jìn)和個(gè)性化定制界面及用戶(hù)交互的同時(shí),不需要重新編寫(xiě)業(yè)務(wù)邏輯,MVC分層有助于管理和架構(gòu)復(fù)雜的應(yīng)用程序
    2021-06-06
  • SpringBoot發(fā)送各種復(fù)雜格式郵件的示例詳解

    SpringBoot發(fā)送各種復(fù)雜格式郵件的示例詳解

    本文主要介紹了如何使用JavaMailSender接口和MimeMessageHelper類(lèi),在SpringBoot實(shí)現(xiàn)發(fā)送帶有附件,嵌入資源,抄送和密送的復(fù)雜郵件,需要的可以了解下
    2024-11-11
  • Java ResourceBundle案例詳解

    Java ResourceBundle案例詳解

    這篇文章主要介紹了Java ResourceBundle案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Java多線(xiàn)程并發(fā)編程 并發(fā)三大要素

    Java多線(xiàn)程并發(fā)編程 并發(fā)三大要素

    這篇文章主要介紹了Java多線(xiàn)程并發(fā)編程 并發(fā)三大要素,需要的朋友可以參考下
    2017-05-05
  • MyBatis-Plus如何使用枚舉自動(dòng)關(guān)聯(lián)注入詳解

    MyBatis-Plus如何使用枚舉自動(dòng)關(guān)聯(lián)注入詳解

    這篇文章主要給大家介紹了關(guān)于MyBatis-Plus如何使用枚舉自動(dòng)關(guān)聯(lián)注入的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MyBatis-Plus具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Spring boot Rabbitmq消息防丟失實(shí)踐

    Spring boot Rabbitmq消息防丟失實(shí)踐

    這篇文章主要介紹了Spring boot Rabbitmq消息防丟失實(shí)踐,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • Java Apache Shiro安全框架快速開(kāi)發(fā)詳解流程

    Java Apache Shiro安全框架快速開(kāi)發(fā)詳解流程

    Apache Shiro是一個(gè)強(qiáng)大且易用的Java安全框架,執(zhí)行身份驗(yàn)證、授權(quán)、密碼和會(huì)話(huà)管理。使用Shiro的易于理解的API,您可以快速、輕松地獲得任何應(yīng)用程序,從最小的移動(dòng)應(yīng)用程序到最大的網(wǎng)絡(luò)和企業(yè)應(yīng)用程序
    2021-10-10
  • MyBatis-Plus?條件查詢(xún)器的實(shí)現(xiàn)

    MyBatis-Plus?條件查詢(xún)器的實(shí)現(xiàn)

    本文主要介紹了MyBatis-Plus?條件查詢(xún)器的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論

丰都县| 陇川县| 肥乡县| 山西省| 城步| 和龙市| 武强县| 清新县| 新乐市| 张掖市| 鄂伦春自治旗| 沁阳市| 射阳县| 岳阳县| 湖州市| 方城县| 肥乡县| 沙湾县| 呼伦贝尔市| 定陶县| 奈曼旗| 张家川| 紫阳县| 湖南省| 黄梅县| 承德县| 临朐县| 赤峰市| 兰考县| 于都县| 东乡| 大关县| 连州市| 泸溪县| 交口县| 临沭县| 曲周县| 荣成市| 县级市| 西丰县| 凤台县|