java中的进制转换及转换函数

article/2025/9/24 0:33:26

Java的进制转换

 进制转换原理

    十进制 二进制:

    原理: 对十进制数进行除 2 运算取余。

      6 --> 110

  二进制 十进制

 原理: 二进制 乘以 2 n次幂 的过程

      110 ->0*20 + 1*21 + 1 * 22

                     0  +  2   + 4=6

      0   0  1  1 0 1 0 1

    128 64 32 16 8 4 2 1    = 53

 当 8bit 都是 1  最大是 255 那么一个字节最大就是 255

 

   负数的二进制:

 其实就是 十进制数 转换成 二进制数后 取反+1

    -6为例,一个整数类型 是 4个字节 1 int = 4 byte = 32 bit

     0000-0000  0000-0000  0000-0000  0000-0110

     1111-1111  1111-1111  1111-1111  1111-1001 取反

  + 0000-0000  0000-0000  0000-0000  0000-0001  +1

       --------------------------------------------------

     1111-1111  1111-1111  1111-1111  1111-1010  = -6

 

 二进制 十六进制

    先将十进制 转成 二进制 --> 十六进制

    四个二进制位 就是 一个 十六进制位

         1111 最大值是 8+4+2+1 = 15 161

        以  90为例:

         0101-1010

           ----   ----

           5        A        90 十六进制表示为 0x5A

 二进制 八进制

    三个二进制位 就是一个 八进制位

          111 = 4+2+1 = 7 81

    前面位数不够 0

         001-011-010

            --- --- ---

            1   3   2   = 0132


进制转换原理

/*
该类用于进制转换
*/
public class Demo_2 
{
public static void main(String[] args)
{
//System.out.println("hello");
System.out.println(Integer.toBinaryString(365));//十进制转换成二进制
System.out.println(Integer.toHexString(365));//十进制转换成十六进制
System.out.println(Integer.toOctalString(365));//十进制转换成8进制
System.out.println(Integer.toString(10,16));//十进制转换成对应进制数,不适合用于负数,第一个参数为转换数,第二个参数为转换进制
System.out.println(Integer.parseInt("1010",2));//N进制转换成十进制,返回类型为int,第一个参数为字符串,第二个参数为进制
System.out.println(Integer.parseInt("1010",8));
System.out.println(Integer.parseInt("1010",16));
System.out.println(Integer.valueOf("1010",2));//N进制转换成十进制,返回类型为int,第一个参数为字符串,第二个参数为进制
System.out.println(Integer.parseInt("1010",8));
System.out.println(Integer.parseInt("1010",16));
}
}

在dos下的运行结果1:


引入负数测试代码:

	System.out.println(Integer.toString(10,2));//十进制转换成对应进制数,不适合用于负数
System.out.println(Integer.toString(-10,2));
System.out.println(Integer.toString(10,8));//第一个参数为转换数,第二个参数为转换进制
System.out.println(Integer.toString(-10,8));
System.out.println(Integer.toString(10,16));
System.out.println(Integer.toString(-10,16));

在dos下的运行结果2:




http://chatgpt.dhexx.cn/article/4QXt29fd.shtml

相关文章

Java实现任意进制转换拓展进制转换计算器

JAVA实现蓝桥杯基础练习十六进制转换八进制-----------拓展进制转换计算器 这个题目我浏览了大量的道友的文章发现十分麻烦,但仍然从其中收益菲薄,所以在这里分享一下我认为最好的代码 import java.math.BigInteger; import java.util.Scanner;public c…

java实现十进制数转换成二进制数

十进制数转换成二进制 import java.util.Scanner; public class Textwile { public static void main(String[] args) { Scanner scanner new Scanner(System.in); System.out.println(“请输入一个十进制的整数:”); int num scanner.nextInt(); String nums …

Java算法学习:java进制转换(十进制转八进制,十进制转二进制,十六进制转八进制)

java进制转换(十进制转八进制,十进制转二进制,十六进制转八进制) 这几天在复习C语言的数据结构栈和队列那一章的时候,看到利用栈的特性FILO实现的进制转换十分简洁 想起了java中实现栈的操作十分方便(不用…

Java 3种方法实现进制转换

由其他进制转换为十进制比较简单,下面着重谈一谈十进制如何化为其他进制。 1.使用Java带有的方法Integer,最简单粗暴了,代码如下 //使用java提供的方法//但仅局限于比较常用的二进制、八进制、十六进制public static String trans1(int num…

Java实现十进制与二进制互相转换

目录 前言十进制转二进制正整数转二进制小数转换成二进制代码实现 二进制转十进制代码实现 BigInteger概念运用 前言 Java有哪些工具类可以实现十进制与二进制之前的转换呢?欲知详情,请看下文分解。 十进制转二进制 正整数转二进制 除2取余,…

Java 中的进制转换

前言 所谓进制转换,就是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”和“位权”所构成。其中基数是指进位计数制中所采用的数码的个数,逢 n 进 1 中的 n 就是基数。而位权则指的是进位制中每一个固定位置所对应的单位制&am…

Java十进制转换为二进制

Java十进制到二进制转换的3种不同方法。 1. Integer.toString()方法 我们可以使用Integer类的toString()方法将十进制数转换为二进制数。此方法有两个参数,第一个参数是十进制数,第二个参数是我们要转换的基…

Java 菜鸟入门 | 常用进制转换

前言 所谓进制转换,就是人们利用符号来计数的方法。进制转换由一组数码符号和两个基本因素“基数”和“位权”所构成。其中基数是指进位计数制中所采用的数码的个数,逢 n 进 1 中的 n 就是基数。而位权则指的是进位制中每一个固定位置所对应的单位制&am…

Java进制转换(二进制、八进制、十进制、十六进制)

在Java编程中,经常需要进行不同进制之间的转换,包括二进制、八进制、十进制和十六进制。本篇博文将详细介绍如何在Java中实现这些进制之间的转换。 目录 一、十进制与其他进制转换1. 十进制转二进制2. 十进制转八进制3. 十进制转十六进制 二、其他进制与…

java进制转换方法

一、十进制向二、八、十六进制的转换 方法一: Integer.toBinaryString(i)表示十进制转为二进制 Integer.toOctalString(i)表示十进制转为八进制 Integer.toHexString(i)表示十进制转为十六进制 public static void main(String[] args) {String num1 Integer.toBi…

Quartz定时任务框架(一):概述和Job、JobDetail详解

文章目录 Quartz定时任务框架核心概念Hello World 入门 深入学习原理概述Job和JobDetailJobDataMapJob实例Job的数据状态和并发Job的其它特性 Quartz定时任务框架 核心概念 JobJobDetailTriggerScheduler Job: 既然是定时任务,任务任务对吧,job就是你…

struts2+quartz定时任务

最近有需求要写一个定时任务 目的是更新一些员工/人员与部门之间的关系 项目用的是struts2 当我加了spring的jar包之后写了一个定时任务 项目经理不让用spring 就修改一下 这次贴个全的 下面是任务类 package com.timetask.action; import java.io.BufferedWriter; import…

Quartz定时任务框架使用教程详解

Quartz定时任务框架学习 什么是QuartzQuartz依赖引入使用 QuartzQuartz API,Jobs和TriggersJob 和 Trigger为什么既有 Job,又有 Trigger 呢?Key Job与JobDetail介绍为什么设计成JobDetail Job,不直接使用JobJobDataMapJob实例Job…

quartz定时任务不执行

quartz定时任务执行一段时间不执行的原因 数据库表QRTZ_TRIGGERS 里的TRIGGER_STATE 字段的值自动修改为ERROR了 ,quartz定时任务是不扫描这种ERROR情况. 之所以出现ERROR 原因在于job里有bug,导致quartz自动将状态改变,然后quartz不执行ERROR状态的job. 1.查找原因 原因如下图…

SpringBoot结合Quartz实现定时任务

《从零打造项目》系列文章 工具 比MyBatis Generator更强大的代码生成器 ORM框架选型 SpringBoot项目基础设施搭建SpringBoot集成Mybatis项目实操SpringBoot集成MybatisPlus项目实操SpringBoot集成Spring Data JPA项目实操 数据库变更管理 数据库变更管理:Liquibase…

Quartz定时任务不定时执行

请移步: https://editor.csdn.net/md/?articleId126933515 手动执行才执行。 cron表达式是 1分钟执行3次,一直正常的。 cron "0 */20 * * * ?"依次报错: 后定时任务不再执行了。 手动触发可以正常执行。 Job taskJob (Job…

Springboot 使用quartz 定时任务 增删改查

前段时间公司项目用到了 定时任务 所以写了一篇定时任务的文章 ,浏览量还不错 , Springboot 整合定时任务 ) 所以就准备写第二篇, 如果你是一名Java工程师,你也可以会看到如下的页面 ,去添加定时任务 定时任务展示 :…

JAVA - Quartz 定时任务_启动原理

JAVA - Quartz 定时任务_启动原理 前言 在开发过程中,我们会用定时任务来执行一些操作,例如定时去捞取流水重试业务、定时去消息中间件获取消息等等相关需求 简单的定时任务实现可以借助Spring提供的 Scheduled 注解 详细看 Spring 原理之 Scheduled …

如何应用quartz定时任务?

Quartz可以用来做什么? Quartz是一个强大任务调度框架,我工作时候会在这些情况下使用到quartz框架,当然还有很多的应用场景,在这里只列举2个实际用到的 餐厅系统会在每周四晚上的22点自动审核并生成报表人事系统会在每天早晨8点…

Quartz定时任务基础学习

Quartz基础笔记 前言 1、什么是Quartz Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目。 2、Quartz的运行环境是什么? Quartz可以运行嵌入在一个独立式应用程序Quartz可以在应用服务器或者Servlet容器实例化,并且参与事务Quartz可…