当前位置: 首页 > news >正文

Java中进制转换的两种方法你知道吗?

目录

十进制转其他进制

其他进制转十进制

实战: A进制转B进制


关于大数运算可以参考躲不掉的高精度计算,蓝桥杯必考_高精度算法在哪些比赛考_无忧#的博客-CSDN博客

十进制转其他进制

使用 Integer.toString(int n,int radix) 方法,该方法第一个参数是需要进行进制转换的数(int),第二个参数是需要进行转换的进制(int),返回的是一个Integer类型的数。
        //十进制转其他进制System.out.println("十进制转其他进制");int n=200;System.out.println(n+"的二进制是:"+Integer.toString(n,2));System.out.println(n+"的八进制是:"+Integer.toString(n,8));System.out.println(n+"的十进制是:"+Integer.toString(n,10));System.out.println(n+"的十六进制是:"+Integer.toString(n,16));

 使用 BigInteger(String num).toString(int radix) 方法,该方法第一个参数是需要进行进制转换的数(String),第二个参数是需要进行转换的进制(int),返回的是一个String类型的字符串。

        // 使用BigInteger对象;转换成负数只需要在字符串前加上负号-;BigInteger能够存储比Long.MAX_VALUE更大的数;String num="200";String s1=new BigInteger(num).toString(2);String s2=new BigInteger(num).toString(8);String s3=new BigInteger(num).toString(10);String s4=new BigInteger(num).toString(16);System.out.println(num+"的二进制是:"+s1);System.out.println(num+"的八进制是:"+s2);System.out.println(num+"的十进制是:"+s3);System.out.println(num+"的十六进制是:"+s4);System.out.println("——————————————————————————————————————————");

其他进制转十进制

使用 Integer.parseInt(String s , int radix) 方法,该方法第一个参数是需要进行进制转换的数(String),第二个参数是需要进行转换的进制(int),返回的是一个Integer类型的数。

        String s1="11001000";String s2="310";String s3="200";String s4="c8";System.out.println("二进制数"+s1+"的十进制是:"+Integer.parseInt(s1,2));System.out.println("八进制数"+s2+"的十进制是:"+Integer.parseInt(s2,8));System.out.println("十进制数"+s3+"的十进制是:"+Integer.parseInt(s3,10));System.out.println("十六进制数"+s4+"的十进制是:"+Integer.parseInt(s4,16));

 使用 new BigInteger(String val, int radix) 方法,该方法第一个参数是需要进行进制转换的数(String),第二个参数是需要进行转换的进制(int),返回的是一个BigInteger类型的数。

        //其他进制转十进制BigInteger b1 = new BigInteger("11001000", 2);BigInteger b2 = new BigInteger("310", 8);BigInteger b3 = new BigInteger("200", 10);BigInteger b4 = new BigInteger("c8", 16);System.out.println("二进制数11001000的十进制是:"+b1);System.out.println("八进制数310的十进制是:"+b2);System.out.println("十进制数200的十进制是:"+b3);System.out.println("十六进制数c8的十进制是:"+b4);System.out.println("——————————————————————————————————————————");

实战: A进制转B进制

思路:将A进制数转化为十进制数,再将10进制数转化为B进制数

public class Main {public static void main(String[] args) {//十进制转其他进制
//        System.out.println("十进制转其他进制");
//        int n=200;
//        System.out.println(n+"的二进制是:"+Integer.toString(n,2));
//        System.out.println(n+"的八进制是:"+Integer.toString(n,8));
//        System.out.println(n+"的十进制是:"+Integer.toString(n,10));
//        System.out.println(n+"的十六进制是:"+Integer.toString(n,16));
//        System.out.println("——————————————————————————————————————————");//其他进制转十进制
//        System.out.println("其他进制转十进制");
//        String s1="11001000";
//        String s2="310";
//        String s3="200";
//        String s4="c8";
//        System.out.println("二进制数"+s1+"的十进制是:"+Integer.parseInt(s1,2));
//        System.out.println("八进制数"+s2+"的十进制是:"+Integer.parseInt(s2,8));
//        System.out.println("十进制数"+s3+"的十进制是:"+Integer.parseInt(s3,10));
//        System.out.println("十六进制数"+s4+"的十进制是:"+Integer.parseInt(s4,16));
//        System.out.println("——————————————————————————————————————————");
////八进制转十六进制System.out.println("八进制转十六进制");String s8="310";//八进制数int num8=Integer.parseInt(s8,8);//先将八进制数转化为十进制数System.out.println("八进制数"+s8+"转换为十六进制数是:"+Integer.toString(num8,16));//十六进制转二进制System.out.println("十六进制转二进制");String s16="c8";//十六进制数int num16=Integer.parseInt(s16,16);//先将十六进制数转化为十进制数System.out.println("十六进制数"+s16+"转换为二进制数是:"+Integer.toString(num16,2));System.out.println("——————————————————————————————————————————");}
}

import java.math.BigInteger;public class Main {public static void main(String[] args) {
//        String num="200";
//        String s1=new BigInteger(num).toString(2);
//        String s2=new BigInteger(num).toString(8);
//        String s3=new BigInteger(num).toString(10);
//        String s4=new BigInteger(num).toString(16);
//        System.out.println(num+"的二进制是:"+s1);
//        System.out.println(num+"的八进制是:"+s2);
//        System.out.println(num+"的十进制是:"+s3);
//        System.out.println(num+"的十六进制是:"+s4);
//        System.out.println("——————————————————————————————————————————");
////其他进制转十进制//使用BigInteger对象;转换成负数只需要在字符串前加上负号-;BigInteger能够存储比Long.MAX_VALUE更大的数;
//        BigInteger b1 = new BigInteger("11001000", 2);
//        BigInteger b2 = new BigInteger("310", 8);
//        BigInteger b3 = new BigInteger("200", 10);
//        BigInteger b4 = new BigInteger("c8", 16);
//        System.out.println("二进制数11001000的十进制是:"+b1);
//        System.out.println("八进制数310的十进制是:"+b2);
//        System.out.println("十进制数200的十进制是:"+b3);
//        System.out.println("十六进制数c8的十进制是:"+b4);
//        System.out.println("——————————————————————————————————————————");BigInteger b8 = new BigInteger("310", 8);System.out.println("八进制数310的十六进制是:"+b8.toString(16));BigInteger b16 = new BigInteger("c8", 16);System.out.println("十六进制数c8的二进制是:"+b16.toString(2));}
}

相关文章:

Java中进制转换的两种方法你知道吗?

目录 十进制转其他进制 其他进制转十进制 实战: A进制转B进制 关于大数运算可以参考躲不掉的高精度计算,蓝桥杯必考_高精度算法在哪些比赛考_无忧#的博客-CSDN博客 十进制转其他进制 使用 Integer.toString(int n,int radix) 方法,该方法…...

Qemu搭建ARM Vexpress开发环境

Qemu搭建ARM Vexpress开发环境 文章目录 Qemu搭建ARM Vexpress开发环境Qemu简介QEMU安装前的准备工作QEMU 安装的两种方式通过网络在线安装源码编译安装源码获取QEMU依赖库安装编译安装 命令选项qemu的标准选项qemu显示选项网络属性相关选项kvm的网络模型 Ubuntu 双网卡&#x…...

JMM如何实现volatile写/读的内存语义

内存屏障类型表 StoreLoad Barriers是一个“全能型”的屏障,它同时具有其他3个屏障的效果。现代的多处理器大多支持该屏障(其他类型的屏障不一定被所有处理器支持)。执行该屏障开销会很昂贵,因为当前处理器通常要把写缓冲区中的数…...

Smali的使用技巧:快速定位Android应用程序中的关键代码

简述 Smali是一种Android应用程序的Dalvik虚拟机指令集汇编语言,用于编写和修改应用程序的DEX文件。通过编写和修改Smali代码,可以实现对Android应用程序的定制化和逆向分析。Smali语言类似于汇编语言,直接操作Dalvik虚拟机指令集。 Smali代…...

04_两种常见的网页反爬措施及应对方法

一、封禁IP地址反爬 1、应对思路: 理解这种反爬方法的含义:当我们用自己电脑的ip地址短时间,高频率访问某个具有此类反爬设置的网站,这种网站就会把我们的ip地址封禁,一般都是封24小时或者其他时间。解决方案:通过代理ip访问,这种方式只不过就是让你有了重新访问网页的…...

安装docker环境,并制作docker镜像

docker环境安装 进入linux虚机后,安装docker环境,制作docker镜像并运行,进入运行中的容器,查看挂载的日志或报告 1.安装docker sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 2.使用docker仓库安装…...

MySQL数据库 – node使用

1 MySQL查询对象 2 MySQL查询数组 3 mysql2库介绍使用 4 mysql2预处理语句 5 mysql2连接池使用 6 mysql2的Promi 这里仅说明如何使用服务器连接数据库并进行操作。 预处理语句就是可以输入变量的语句(表现形式是有符号:?)。需…...

JAVA使用HTTP代码示例模板

以下是一个使用Java发送HTTP请求的示例代码: java import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class HttpExample { public static void main(String[] args) { try…...

elementui tree 支持虚拟滚动和treeLine (下)

​ 由于我之前没有发布过npm 包,这里还得现学一下。 参考资料: 链接: 如何写一个vue组件发布到npm,包教包会,保姆级教学链接: vue组件发布npm最佳实践 按照上面的步骤,我通过 vue-sfc-rollup 生成了项目,…...

富人父母都教给孩子什么样的财富思维?

1.认清金钱的价值和作用,不要否认或忽视它对生活的影响。 2.提高社交能力,学会与不同的人沟通和合作,扩大人脉和资源。 3.理性消费,让钱在流动中产生效益,而不是囤积或浪费。 4.释放自己的欲望,追求自己想要…...

国内比较火的报表工具测评——Smartbi电子表格软件和Finereport

最近在学习BI软件,因为最近工作中需要开发报表,因此选用了国内市场比较热门的报表工具——Finereport和Spreadsheet进行学习。 BI软件经常会定期发布新的版本,增加新的功能模块,或者对现有功能进行增强,提升运行效率。…...

变电所运维云平台在电力系统中的应用

安科瑞虞佳豪 变电所运维云平台可以看做是电力监控系统的网络应用延伸,变电所运维云平台通过互联网,电力运维人员通过手机可以随时随地了解工厂配电系统的运行情况,做到无人值守或者少人值守,同时可以监测用能状况、漏电、线缆异…...

【51单片机】AT24C20数据帧(I2C总线)

🎊专栏【51单片机】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【Love Story】 🥰大一同学小吉,欢迎并且感谢大家指出我的问题🥰 小吉先向大家道个歉,因为最近在期末…...

Python内置函数isinstance()函数介绍

Python内置函数isinstance()函数介绍 isinstance() 函数是Python内置函数,来判断一个对象是否是一个已知的类型,返回值为布尔值True或False。其语法格式: isinstance(object, classinfo) 【官方说法https://docs.python.org/zh-cn/3/librar…...

QxRibbon 知:搭建 CMake 构建环境

文章目录 前言安装 cmake问题处理qtcreator 检测 CMake 异常 参考资料 前言 高版本的 QtCreator 已经集成了 cmake 工具,并支持以 CMakelists.txt 文件作为工程开发项目。 https://www.qt.io/blog/2019/07/30/update-on-cmake-project-support-in-qt-creator 安装…...

Spring框架-面试题核心概念

目录 1.Spring框架的作用是什么? 2. 什么是DI? 3.什么是AOP? 4.Spring常用注解 5.Spring中的设计模式 6.Spring支持的几种bean的作用域 7.Spring中Bean的生命周期? 8.Spring中的事务管理 9.Spring中的依赖注入方式有几种 10.Sprin…...

Tomcat部署及优化

Tomcat部署及优化 一、Tomcat的介绍1.Tomcat核心组件2.Tomcat 功能组件结构3.Container 结构分析:4.Tomcat处理请求过程 二、Tomcat 部署步骤1.关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下2.安装JDK3.设置JDK环境变量4.编写一个java 简易的源代码…...

C++/C按照时间命名保存bin文件

背景 在Linux应用编程过程中,使用C或者C语言保存、读取bin文件是比较常见的需求。这里详细记录一下使用C保存bin文件,也可以使用C语言实现。 代码 C/C语言保存bin文件函数,C中也能使用 正确写入返回0,错误返回-1 // C 保存bi…...

面向多告警源,如何构建统一告警管理体系?

本文介绍告警统一管理的最佳实践,以帮助企业更好地处理异构监控系统所带来的挑战和问题。 背景信息 在云原生时代,企业IT基础设施的规模越来越大,越来越多的系统和服务被部署在云环境中。为了监控这些复杂的IT环境,企业通常会选…...

python 面向对象 -- 简单理解版

一、什么是面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的。除了Python,Java也是一门面向对象的编程语言。 先来简单的了解下面向对象的一些基本特征。 类(Class): 用来描述具有相…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

UDP(Echoserver)

网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...

【机器视觉】单目测距——运动结构恢复

ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛&#xf…...

Android15默认授权浮窗权限

我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...

保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek

文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...