,需要的朋友可以參考下" />

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

Java實(shí)現(xiàn)二進(jìn)制與十進(jìn)制之間互相轉(zhuǎn)換的完整代碼

 更新時(shí)間:2025年08月05日 09:58:27   作者:肥極喵  
在編程中,數(shù)制轉(zhuǎn)換是一個(gè)非常常見(jiàn)的需求,Java 作為一種高級(jí)語(yǔ)言,提供了便捷的方法來(lái)實(shí)現(xiàn) 二進(jìn)制和 十進(jìn)制之間的轉(zhuǎn)換,本文將介紹 Java 中二進(jìn)制與十進(jìn)制互轉(zhuǎn)的原理與實(shí)現(xiàn)方式,并附上完整代碼示例,
,需要的朋友可以參考下

在編程中,數(shù)制轉(zhuǎn)換是一個(gè)非常常見(jiàn)的需求。Java 作為一種高級(jí)語(yǔ)言,提供了便捷的方法來(lái)實(shí)現(xiàn) 二進(jìn)制(Binary)十進(jìn)制(Decimal) 之間的轉(zhuǎn)換。本文將介紹 Java 中二進(jìn)制與十進(jìn)制互轉(zhuǎn)的原理與實(shí)現(xiàn)方式,并附上完整代碼示例。

一、十進(jìn)制轉(zhuǎn)二進(jìn)制

1.1 原理

十進(jìn)制轉(zhuǎn)二進(jìn)制的方法通常有兩種:

  • 手動(dòng)除以 2 取余法:不斷將十進(jìn)制數(shù)除以 2,將余數(shù)倒序排列。
  • 使用 Java 提供的封裝方法Integer.toBinaryString(int i)

1.2 示例代碼

public class DecimalToBinary {
    public static void main(String[] args) {
        int decimal = 42;
        String binary = Integer.toBinaryString(decimal);
        System.out.println("十進(jìn)制 " + decimal + " 轉(zhuǎn)換為二進(jìn)制為: " + binary);
    }
}

輸出:

十進(jìn)制 42 轉(zhuǎn)換為二進(jìn)制為: 101010

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

2.1 原理

  • 將二進(jìn)制字符串按照權(quán)展開(kāi)(即 $2^n$)求和。
  • Java 中可以使用 Integer.parseInt(String s, int radix) 方法進(jìn)行轉(zhuǎn)換。

2.2 示例代碼

public class BinaryToDecimal {
    public static void main(String[] args) {
        String binary = "101010";
        int decimal = Integer.parseInt(binary, 2);
        System.out.println("二進(jìn)制 " + binary + " 轉(zhuǎn)換為十進(jìn)制為: " + decimal);
    }
}

輸出:

二進(jìn)制 101010 轉(zhuǎn)換為十進(jìn)制為: 42

三、完整示例:交互式轉(zhuǎn)換器

import java.util.Scanner;

public class BinaryDecimalConverter {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("請(qǐng)選擇操作:");
        System.out.println("1. 十進(jìn)制轉(zhuǎn)二進(jìn)制");
        System.out.println("2. 二進(jìn)制轉(zhuǎn)十進(jìn)制");
        int choice = scanner.nextInt();

        if (choice == 1) {
            System.out.print("請(qǐng)輸入十進(jìn)制數(shù)字: ");
            int decimal = scanner.nextInt();
            String binary = Integer.toBinaryString(decimal);
            System.out.println("轉(zhuǎn)換后的二進(jìn)制為: " + binary);
        } else if (choice == 2) {
            System.out.print("請(qǐng)輸入二進(jìn)制數(shù)字: ");
            String binary = scanner.next();
            try {
                int decimal = Integer.parseInt(binary, 2);
                System.out.println("轉(zhuǎn)換后的十進(jìn)制為: " + decimal);
            } catch (NumberFormatException e) {
                System.out.println("輸入的不是有效的二進(jìn)制數(shù)字!");
            }
        } else {
            System.out.println("無(wú)效的選擇!");
        }

        scanner.close();
    }
}

四、總結(jié)

類型Java 方法示例
十進(jìn)制轉(zhuǎn)二進(jìn)制Integer.toBinaryString(int)Integer.toBinaryString(42) → 101010
二進(jìn)制轉(zhuǎn)十進(jìn)制Integer.parseInt(str, 2)Integer.parseInt("101010", 2) → 42

Java 提供的這些工具方法極大地簡(jiǎn)化了進(jìn)制轉(zhuǎn)換操作。在實(shí)際開(kāi)發(fā)中,你也可以擴(kuò)展思路處理其他進(jìn)制之間的轉(zhuǎn)換,比如八進(jìn)制、十六進(jìn)制等。

如需進(jìn)一步擴(kuò)展為支持其他進(jìn)制(例如十六進(jìn)制轉(zhuǎn)二進(jìn)制等),也可以繼續(xù)使用 Integer.toString(int num, int radix)Integer.parseInt(String str, int radix) 進(jìn)行靈活轉(zhuǎn)換。

以上就是Java實(shí)現(xiàn)二進(jìn)制與十進(jìn)制之間互相轉(zhuǎn)換的完整代碼的詳細(xì)內(nèi)容,更多關(guān)于Java二進(jìn)制與十進(jìn)制互轉(zhuǎn)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • @FeignClient注解中屬性contextId的使用說(shuō)明

    @FeignClient注解中屬性contextId的使用說(shuō)明

    這篇文章主要介紹了@FeignClient注解中屬性contextId的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • SpringBoot實(shí)現(xiàn)子類的反序列化示例代碼

    SpringBoot實(shí)現(xiàn)子類的反序列化示例代碼

    這篇文章主要給大家介紹了關(guān)于SpringBoot實(shí)現(xiàn)子類的反序列化的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用SpringBoot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • java Socket簡(jiǎn)易聊天工具

    java Socket簡(jiǎn)易聊天工具

    這篇文章主要為大家詳細(xì)介紹了java Socket簡(jiǎn)易聊天工具,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 解決IDEA2021版compiler.automake.allow.when.app.running不存在的問(wèn)題

    解決IDEA2021版compiler.automake.allow.when.app.running不存在的問(wèn)題

    很多文章介紹IntelliJ IDEA開(kāi)啟熱部署功能都會(huì)寫到在IntelliJ IDEA中的注冊(cè)表中開(kāi)啟compiler.automake.allow.when.app.running選項(xiàng),此選項(xiàng)在IntelliJ IDEA 2021.2之后的版本遷移到高級(jí)設(shè)置中,下面看下設(shè)置方法
    2021-09-09
  • Spring?boot?整合?Redisson實(shí)現(xiàn)分布式鎖并驗(yàn)證功能

    Spring?boot?整合?Redisson實(shí)現(xiàn)分布式鎖并驗(yàn)證功能

    這篇文章主要介紹了Spring?boot?整合?Redisson實(shí)現(xiàn)分布式鎖并驗(yàn)證,redisson是官方推薦的分布式鎖實(shí)現(xiàn)方案,采用redis自身的原子命令和lua腳本來(lái)實(shí)現(xiàn),需要的朋友可以參考下
    2022-05-05
  • 解決idea找不到類could not find artifact問(wèn)題

    解決idea找不到類could not find artifact問(wèn)題

    本文總結(jié)了解決Java項(xiàng)目中找不到類的問(wèn)題的常見(jiàn)解決方案,包括刷新Maven項(xiàng)目、清理IDEA緩存、Maven Clean Install、重新Package、解決依賴沖突和手動(dòng)導(dǎo)入依賴包等方法
    2025-01-01
  • spring結(jié)合hibernate示例詳解

    spring結(jié)合hibernate示例詳解

    這篇文章主要介紹了spring結(jié)合hibernate結(jié)合,需要的朋友可以參考下
    2017-09-09
  • 最好的Java 反編譯工具的使用對(duì)比分析

    最好的Java 反編譯工具的使用對(duì)比分析

    恰好最近工作中也需要用到 Java 反編譯,所以這篇文章介紹目前常見(jiàn)的的幾種 Java 反編譯工具的使用,在文章的最后也會(huì)通過(guò)編譯速度、語(yǔ)法支持以及代碼可讀性三個(gè)維度,對(duì)它們進(jìn)行測(cè)試,分析幾款工具的優(yōu)缺點(diǎn),感興趣的朋友一起看看吧
    2021-05-05
  • Spring?Boot?根據(jù)配置決定服務(wù)(集群、單機(jī))是否使用某些主件的操作代碼

    Spring?Boot?根據(jù)配置決定服務(wù)(集群、單機(jī))是否使用某些主件的操作代碼

    這篇文章主要介紹了Spring?Boot根據(jù)配置決定服務(wù)(集群、單機(jī))是否使用某些主件,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-04-04
  • Spring?@Autowired注解超詳細(xì)示例

    Spring?@Autowired注解超詳細(xì)示例

    @Autowired注解可以用在類屬性,構(gòu)造函數(shù),setter方法和函數(shù)參數(shù)上,該注解可以準(zhǔn)確地控制bean在何處如何自動(dòng)裝配的過(guò)程。在默認(rèn)情況下,該注解是類型驅(qū)動(dòng)的注入
    2022-08-08

最新評(píng)論

怀来县| 汉源县| 泸州市| 长葛市| 吴忠市| 凤台县| 乐昌市| 云龙县| 永川市| 陵川县| 宁夏| 台南市| 图木舒克市| 贵德县| 新闻| 林西县| 家居| 调兵山市| 海林市| 乐亭县| 申扎县| 乳山市| 凤城市| 堆龙德庆县| 正宁县| 广州市| 辽宁省| 长宁县| 赣榆县| 陕西省| 林甸县| 凤翔县| 太仆寺旗| 富民县| 东乌珠穆沁旗| 河源市| 锦州市| 陆丰市| 固原市| 太仆寺旗| 资阳市|