对于进制转换,c/c++要用到辗转相除,不仅浪费时间,还造成代码量繁多,而任意之间的进制转换还需要以十进制为跳板,

先将其他进制的数字转换为十进制,再将十进制转换为其他进制,而java中自带进制转换的函数与方法,可以直接导包调用,非常方便,下面就是十

进制(非大数,是普通整数)转换其他进制的代码,注意转换后是字符串:

package Main;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        int a=123;
        String s1=Integer.toBinaryString(a);  //将整数a转换成二进制字符串并输出
        System.out.println(s1);
        String s2=Integer.toOctalString(a);   //将整数a转换成八进制字符串并输出
        System.out.println(s2);
        String s3=Integer.toHexString(a);     //将整数a转换成十六进制字符串并输出
        System.out.println(s3);
        //Integer.toString(i,x),将i转换成任意x进制
        String s4=Integer.toString(a,7);      //将整数a转换成7进制并输出
        System.out.println(s4);

    }

}

下面是其他进制转换成10进制

package Main;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
            // Integer.valueof("s",x);  s是对应的某个进制的字符串,x对应当前字符串的进制
            System.out.println("其它制转换到十进制:");
            int y1= Integer.valueOf("FFFF",16);     ///16进制转换成10进制
            System.out.println(y1);
            int y2=Integer.valueOf("776",8);        ///8进制转换成10进制
            System.out.println(y2);
            int y3=Integer.valueOf("0101",2);       //2进制转换成10进制
            System.out.println(y3);
            int y4=Integer.valueOf("101",7);        //7进制转换成10进制
            System.out.println(y4);

            System.out.println("其它的可能用到的函数:");
            //static int parseInt(String s, int radix) //使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
            int n = Integer.parseInt("776", 8) ; ///8进制转换成10进制
            System.out.println(n);
            ///Integer.valueOf()返回一个“integer对象”和Integer.parseInt()返回一个“int值”的区别在于,返回值不同
            ///基本常识,其他的非10进制的数的保存,基本都是以字符串的形式

            ///例子:7进制到8进制的转换
            String q = "6523" ; ///7进制的字符串
            String b = Integer.toString(Integer.valueOf(q,7),8) ;///这样7进制就变成8进制了
    }

}

下面将进行终极宝典,大数的任意进制转换成任意进制

package Main;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner cin = new Scanner(System.in);
        String s = cin.nextLine();
        int x = cin.nextInt();
        int y = cin.nextInt();
        System.out.println(Transform(s,x,y));
    }

    //s:输入的数字  x:原数的进制  y:要转化成的进制
    public static String Transform(String s,int x,int y) {
        return new java.math.BigInteger(s,x).toString(y);
    }
}
}

java的数制转换(详解,全!)的更多相关文章

  1. java.util.Scanner应用详解++扫描控制台输入

    java.util.Scanner应用详解   java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java ...

  2. (转)java.util.Scanner应用详解

    java.util.Scanner应用详解   java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java ...

  3. Java编程配置思路详解

    Java编程配置思路详解 SpringBoot虽然提供了很多优秀的starter帮助我们快速开发,可实际生产环境的特殊性,我们依然需要对默认整合配置做自定义操作,提高程序的可控性,虽然你配的不一定比官 ...

  4. Java输出流FileOutputStream使用详解

    Java输出流FileOutputStream使用详解 http://baijiahao.baidu.com/s?id=1600984799323133994&wfr=spider&f ...

  5. Java SPI机制实战详解及源码分析

    背景介绍 提起SPI机制,可能很多人不太熟悉,它是由JDK直接提供的,全称为:Service Provider Interface.而在平时的使用过程中也很少遇到,但如果你阅读一些框架的源码时,会发现 ...

  6. java和javascript日期详解

    ** java,js日期转换:** <Excerpt in index | 首页摘要> java的各种日期转换 <The rest of contents | 余下全文> 日期 ...

  7. Java版人脸检测详解下篇:编码

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  8. Java 8 Stream API详解--转

    原文地址:http://blog.csdn.net/chszs/article/details/47038607 Java 8 Stream API详解 一.Stream API介绍 Java8引入了 ...

  9. java反射机制深入详解

    java反射机制深入详解  转自:http://www.cnblogs.com/hxsyl/archive/2013/03/23/2977593.html 一.概念 反射就是把Java的各种成分映射成 ...

随机推荐

  1. 理解 Spring 注解编程模型

    理解 Spring 注解编程模型 Spring 中有一个概念叫「元注解」(Meta-Annotation),通过元注解,实现注解的「派生性」,官方的说法是「Annotation Hierarchy」. ...

  2. HTML连载39-外边距合并现象、盒子模型以及宽度和高度

    一. 在默认布局的垂直方向上,默认情况下外边距是是不会叠加的,会出现合并现象,谁的外边距较大,就听谁的:但是在水平方向就不会出现这种状况,我们举个例子 span{ display: inline-bl ...

  3. CF #579 (Div. 3) A.Circle of Students

    A. Circle of Students time limit per test2 seconds memory limit per test256 megabytes inputstandard ...

  4. JAVA设计模式---单例模式篇

    单例模式(singleton):是JAVA中最简单的一种设计模式,属于创建型模式.所谓单例,就是整个程序有且仅有一个实例. 特点: 构造方法私有化 在本类中实例化一个对象作为本类的属性 对外提供一个访 ...

  5. Redis 主从,哨兵,集群实战

    下载地址及版本说明 Redis 各版本下载地址: http://download.redis.io/releases/ 版本说明:一般来说版本号第二位,偶数是稳定版本,奇数是在开发中的版本 本文基于R ...

  6. 深入了解String,StringBuffer和StringBuilder三个类的异同

    Java提供了三个类,用于处理字符串,分别是String.StringBuffer和StringBuilder.其中StringBuilder是jdk1.5才引入的. 这三个类有什么区别呢?他们的使用 ...

  7. 记录使用echarts的graph类型绘制流程图全过程(一)-x,y位置的计算

    先说下本次案例业务需求,输入2个节点,获取数据后绘制出2个节点间的路径,之前使用的是网状图,但是网状图的效果不佳,需要转换成流程图的模式: 那么如何在不修改数据的情况下,实现类似效果尼? 看了下ech ...

  8. 从无到有,构建GIS + BIM大厦

    声明:本文是一个系列原创(作者在GIS+BIM行业已有从业15年有余,还是个行业的小学生,文章内容不免有错误或者不当之处,敬请理解),旨在通过这个系列打造一个高性能,高可扩展的GIS+BIM框架,抛砖 ...

  9. Java后台开发方向面试题集合

    内容会不断更新. 初衷是每次看面经肯定都会有一些一时反应不过来的问题,希望集中记录一下便于自己查看. 而答案部分谷歌就很好,当然有些问题可能需要多次谷歌. 对于一些记不住的答案,我也会持续写上一些. ...

  10. java中&和&&

    &和&&都可以用作逻辑与的运算符,表示逻辑与(and) &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如: If(x==33 ...