Java查表法实现十进制转化成其它进制
首先了解十进制转化成二级制的原理
156的二进制为:
156 % 2 = 78 …… 0
83 % 2 = 39 …… 0
39 % 2 = 19 …… 1
19 % 2 = 9 …… 1
9 % 2 = 4 …… 1
4 % 2 = 2 …… 0
2 % 2 = 1 …… 0
1 % 2 = 0 …… 1 从下到上看即为 10011100
100111000转八进制实际上就是
00-000-000-000-000-000-000-000-010-011-100
倒数第一组数110 的十进制即:4
倒数第二组数011 的十进制即:3
倒数第三组数010 的十进制即:2 从下到上看即为 234
156的八进制为234
理十六进制的数
0000-0000 0000-0000 0000-0000 1001-1100
倒数第一组数1100的十进制为:12即C
倒数第二组数1001的十进制为:9 9C

倒数第一组数可以看成和1111“与”运算后得出1100,的十进制为12 即为C
然后右移四位

倒数第二组数可以看成和1001“与”原酸后得出1001,的十进制即9
即在代码中定义一个函数实现
public static void change(int num,int base,int move)
{
if(num==0)//如果是零输出零,结束
{
System.out.println(0);
return;
}
char[] tables ={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
char[] bottle =new char [32];
int position =bottle.length;//定义一个局部变量,从数组后面开始存放数据
while (num!=0)
{
int temp =num & base;
bottle[--position] = tables[temp];
num = num >>> move;
}
for(int x=position;x<bottle.length;x++)
{
System.out.print(bottle[x]);
}
System.out.println();
}


Java查表法实现十进制转化成其它进制的更多相关文章
- Java 二维数组,排序、切换顺序,查表法二进制十进制,这班查找、排序(冒泡、选择)、遍历,获取最大小值(4)
Java 二维数组,排序.切换顺序,查表法二进制十进制,折半查找.排序(冒泡.选择).遍历,获取最大小值(4)
- NOJ 1012 进制转换(十进制转换成随意进制)
题目: 进制转换 时间限制(普通/Java) : 1000 MS/ 3000 MS 执行内存限制 : 65536 KByte总提交 : 1819 測试通过 : ...
- HDU_2031——十进制转换成R进制
Problem Description 输入一个十进制数N,将它转换成R进制数输出. Input 输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=1 ...
- python---十进制转换成n进制
""" 十进制转换成n进制 例子: 100转换成8进制-----144 256除8 商32 余0 32除8 商4 余0 4除8 商0 余4 每次结果的余数进栈, 最后出栈 ...
- C#,Java,C -循环冗余检验:CRC-16-CCITT查表法
C#代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ...
- C语言:十进制进制转换为其他进制(思想:查表法)
// // main.c // Hex conversion // // Created by ma c on 15/7/22. // Copyright (c) 2015年 bjsxt. A ...
- java学习进制转换之查表法
10进制转16进制,以及10进制转2进制,还有10进制转8进制,这些转换如果按照常规思路的话,会灰常的麻烦. 我们来看一下 10进制转16进制: 假如这里有一个十进制数字:35,我们的需求就是把这个3 ...
- 经典算法,yuv与rgb互转,查表法,让你的软件飞起来
代码的运算速度取决于以下几个方面 1. 算法本身的复杂度,比如MPEG比JPEG复杂,JPEG比BMP图片的编码复杂. 2. CPU自身的速度和设计架构 3. CPU的总线带宽 4. 您自己代码的写法 ...
- 集合框架-Map集合练习-Map查表法
1 package cn.itcast.p10.map.test; 2 3 import java.util.HashMap; 4 import java.util.Map; 5 6 public c ...
随机推荐
- A Broken Calculator 最详细的解题报告
题目来源:A Broken Calculator 题目如下(链接有可能无法访问): A Broken Calculator Time limit : 2sec / Stack limit : 256M ...
- Android 性能优化 ---- 启动优化
Android 性能优化 ---- 启动优化 1.为什么要进行启动优化 一款应用的第一印象很重要,第一印象往往决定了用户的去留.打开一款应用,如果速度很快,很顺畅,那么很容易让人觉得这款应用背后的技术 ...
- 问题:win10缺少一个或多个网络协议
国庆回家,家里电脑连不上网了,诊断给出的结果是“缺少一个或多个网络协议” 网上这类问题提问的不少,回答的方法也是各种各样,一个一个试下来,发现这个方法是可行的. 1.打开设置--网络和Internet ...
- IDEA JRebel热部署( IDEA版本是2020.1.2)
1.安装JRebel插件 在IDEA->Settings->plugins先安装JRebel插件: 2.下载工具 安装好JRebel后,找到lanyus大神文章中写的git地址:http: ...
- Ethical Hacking - GAINING ACCESS(7)
Server Side Attacks - NEXPOSE NeXpose is a vulnerability management framework, it allows us to disco ...
- 《Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases》论文总结
Aurora总结 说明:本文为论文 <Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relation ...
- python常见报错信息!错误和异常!附带处理方法
作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息. Python 有两种错误很容易辨认:语法错误和异常. Python assert(断言)用于判断一个表达式,在表达 ...
- [redis] -- 集群篇
三种集群方式 主从同步:主从复制模式中包含一个主数据库实例(master)与一个或多个从数据库实例(slave) 优点: master能自动将数据同步到slave,可以进行读写分离,分担master的 ...
- 从零开始一起学Blazor WebAssembly 开发(4)
登录模块基本完成了,登录主要用了以下几个点: 1.后端采用的Abp Vnext 框架,这个框架自带的IdentityServer4用户角色权限控制,这个框架登录研究了好一阵子,有几个坑这里说下: 1) ...
- 为什么在SpringBoot+maven的项目中,所引入的依赖包可以不指定依赖的版本号?
当在Springboot项目中引入了spring-boot-starter-parent,则可以不用引入依赖包版本号,比如: <parent> <groupId>org.spr ...