java中进制转化只需要记住这两个方法,后续再遇到进制转换的问题,轻松破解!

进制转换的核心就是:

其他进制---》十进制---》其他进制

1、其他进制转成十进制

valueOf() 方法

该方法有以下几种语法格式:

static Integer valueOf(int i)
static Integer valueOf(String s)
static Integer valueOf(String s, int radix)

参数

  • i -- Integer 对象的整数。

  • s -- Integer 对象的字符串。

  • radix --在解析字符串 s 时使用的进制数,用于指定使用的进制数。

返回值

  • Integer valueOf(int i):返回一个表示指定的 int 值的 Integer 实例。

  • Integer valueOf(String s):返回保存指定的 String 的值的 Integer 对象。

  • Integer valueOf(String s, int radix): 返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。

例子

public static void main(String[] args) {
System.out.println(Integer.valueOf("25",16)); // 16进制的25转成10进制的值
System.out.println(Integer.valueOf("25",8)); // 8进制的25转成10进制的值
System.out.println(Integer.valueOf("25",10)); // 10进制的25转成10进制的值
}
// 输出结果
37
21
25

或者使用Integer.parseInt()方法

public static void main(String[] args) {
System.out.println(Integer.parseInt("25",16));
System.out.println(Integer.parseInt("25",8));
System.out.println(Integer.parseInt("25",10));
}

2、十进制转成其他进制

该方法有以下几种语法格式:

String toString()
static String toString(int i)

参数

  • i -- 要转换的整数。

返回值

  • toString(): 返回表示 Integer 值的 String 对象。

  • toString(int i): 返回表示指定 int 的 String 对象。

例子

public static void main(String[] args) {
System.out.println(Integer.toString(25,2)); // 将10进制的25转成2进制的值
System.out.println(Integer.toString(25,8)); // 将10进制的25转成8进制的值
System.out.println(Integer.toString(25,16)); // 将10进制的25转成16进制的值
System.out.println(Integer.toString(25,12)); // 将10进制的25转成12进制的值
}

或者使用常用的转进制的方法

public static void main(String[] args) {
System.out.println(Integer.toBinaryString(25)); // 将10进制的25转成2进制的值
System.out.println(Integer.toOctalString(25)); // 将10进制的25转成8进制的值
System.out.println(Integer.toHexString(25)); // 将10进制的25转成16进制的值
}

综合上面这个两种方法,我们可以简单写一个方法,将任意进制i的字符串s转成指定进制e的结果

// 将任意进制的字符串转成目标进制的字符串
public static String toRadixEvery(String s,int i,int e){
Integer tem=Integer.valueOf(s,i); // 将i进制的字符串转成10进制的整数
return Integer.toString(tem,e); // 将10进制的tem转成e进制 // return Integer.toString(Integer.valueOf(s,i),e);
}

例子:

public static void main(String[] args) {
System.out.println(toRadixEvery("19",16,8));
} // 16进制的19转成8进制的值为31

一招搞定进制转换--java篇的更多相关文章

  1. 进制转换 Java day6

    今天周末学习的不多,只学习了一些二进制转十进制,八进制.十六进制,以及数据单位 二进制转十进制 我们都知道十进制转二进制就是除以2取余的方法.那二进制转到十进制又如何处理呢,今天我来学习以下 我们看看 ...

  2. JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算

    JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...

  3. Java基础笔记(3) 进制与进制转换

    ---恢复内容开始--- 进制 在一般生活中,我们一直在应用的十进制,就是逢十进一,而今天我们要接触的是,计算机编程常用的进制!首先我们要知道,计算机内部运算采用的是二进制,也就是逢二进制! 1.什么 ...

  4. Java进制转换, 数据类型, 运算符

    1:进制转换 转换规则: 先把数据的每一位上的系数乘以对应基数的次幂(低位从零开始),然后相加即可 十进制到其他进制 规则:除基取余,直到商为0,最后将余数反转 十进制到二进制: 除2取余,直到商为0 ...

  5. JAVA基础学习之String、StringBuffer、StringBuilder、基本数据类型的使用、整形进制转换、集合Collection、Vector、ArrayList、LinkedList、HashSet、TreeSet等(3)

    主函数类MainDemo.java package com.itcast.test20140109; import java.util.ArrayList; import java.util.Coll ...

  6. 《java版进制转换》

    import java.util.Scanner; class 十进制转成十六进制_2 { public static void main(String[] args) { int num = 0; ...

  7. Java:进制转换

    进制转换是常常需要的一种数据处理,在java中的一些类中封装了具有转换功能的方法,这个不做介绍.其实,进制之间的转化是通过先位异或&,再位移动>>>的方式实现的. 例如,对于 ...

  8. Java基础复习之一篇:关健字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换

    1.关健字 1.1.被Java语言赋予特定意义的单词(如:class,interface,public ,static) 1.2.全部是小写 1.3.注意事项(goto和const作为关健字保留起来) ...

  9. java高精度进制转换

    POJ1131   由于本题只有小数部分(整数部分均为0),故在进制转换的之后只能自己手写转换方法了.   8进制转换10进制的方法为,以0.75为例,应是7*8^-1 + 5*8^-2.所以呢,可以 ...

  10. java中Integer包装类的具体解说(java二进制操作,全部进制转换)

    程序猿都非常懒,你懂的! 今天为大家分享的是Integer这个包装类.在现实开发中,我们往往须要操作Integer,或者各种进制的转换等等.我今天就为大家具体解说一下Integer的使用吧.看代码: ...

随机推荐

  1. Java并发编程实例--5.线程睡眠

    有时候我们需要让线程在一段时间内不做任何事.例如某线程每个一小时检测一下传感器,剩余的时间不做任何事. 我们可以使用sleep()方法使线程睡眠,此期间不占用计算机资源. 这个方法接受一个整数表示睡眠 ...

  2. Redis分布式锁的正确使用姿势

    前言 分布式锁在日常开发中,用处非常的多.包括但不限于抢红包,秒杀,支付下单,幂等,等等场景. 分布式锁的实现方式有多种,包括redis实现,mysql实现,zookeeper实现等等.而其中redi ...

  3. pinia

    Pinia学习 Vue3中 使用 官网:https://pinia.web3doc.top/introduction.html 安装 yarn add pinia # 或者使用 npm npm ins ...

  4. ContentType组件表使用

    https://www.shuzhiduo.com/A/qVdepN2r5P/

  5. 【Azure Storage Blob】如何通过.NET Azure Storage Blobs SDK获取到Blob的MD5值呢?

    问题描述 通过.NET Azure Storage Blobs SDK , 获取Blob的MD5值,查看了Azure操作手册中,介绍可以使用 blob.Properties.ContentMD5 属性 ...

  6. 【Azure 应用程序见解】通过无代码方式在App Service中启用Application Insights后,如何修改在Application Insights中显示的App Service实例名呢?

    问题描述 在App Service中,可以非常容易的启动Application Insights服务.默认情况中,在Application Insights中查看信息时候,其中的对象名称默认为App ...

  7. 酷睿i5与i7处理器有什么区别

    本文将深入解析酷睿i5与i7处理器的区别,帮助您做出明智的购买决策.购买笔记本之前,了解处理器相关知识至关重要. 处理器作为电脑的核心部件,其性能直接影响整机运行速度和效率. 市面上主流的笔记本处理器 ...

  8. VSCode 配置 Spring Boot 项目开发环境

    神器IDEA在升级到2023之后越发卡顿, EDU邮箱也不能用了, 照现在这个JDK版本的升级速度, 神器不升级也不行, 需要开始物色替代品. 其它IDE我用得少, VSCode还是比较熟悉的, 可以 ...

  9. Openssl命令详解 - 证书篇

    生成自签证书 # 设置CA证书subject CA_SUBJ="/C=CN/ST=ShanDong/L=JiNan/O=sec/OU=sec/CN=www.hxy.com/emailAddr ...

  10. 小技巧-- 断网恢复(未识别网络-无internet访问权限)

    配置host(解决延迟高问题) 安装java,配置环境变量,直接系统path中bin地址就行,不行就往上面移动 win开机启动 Win + R 打开运行,输入:shell:startup calc  ...