数组—进制转换(查表法)

数组—进制转换(查表法)

package com.shuzu;

public class shuzuJinZhiZhuanHuan {

     * @param a 所要转换的十进制数,b 不同进制所要与(&)的数不同,wei 向右移动几位

     * 查表法

     * 十进制转二进制

     * 十进制转十六进制

     * 定义数组字符表

     * 定义数组容器arr,长度为32位(二进制) or 8位(十六进制)

     * 定义指针pos

     * 循环传入参数(int a),判断a的值如果不等于0继续循环

     *

     * 60—0000 0000 0000 0000 0000 0000 0011 1100

     * &15  0000 0000 0000 0000 0000 0000 0000 1111

     * ———————————————-

     *      0000 0000 0000 0000 0000 0000 0000 1100 = 12 ‘C’

    

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        trans(60,15,4);

    }

    

    public static void trans(int a,int b,int wei){

        char[] temp = { ‘0’,’1′,’2′,’3′,

                        ‘4’,’5′,’6′,’7′,

                        ‘8’,’9′,’A’,’B’,

                        ‘C’,’D’,’E’,’F’ }; //字符表

        char[] arr = new char[32];   //定义容器,用来存储转换后的字符数组

        int su = 0;                     //定义临时变量,用于存储与&之后的结果

        int pos = arr.length;         //定义指针下标,从数组的最后一位开始,用于从后往前存,将结果反转

        while(a!=0){                 //循环移位之后的十进制数

            su = a & b;                 //将与&的结果存入临时变量su中    

            arr[–pos] = temp[su];     //temp[su],将字符表中下标位su的字符存入arr中,–pos,从数组的最后一位开始存,每次减一向前移动一位

            a = a >>> wei;             //将十进制数想右移动4位(十六进制) or 1位(二进制),一遍得到下一个四位的值

转载于:https://www.cnblogs.com/limpoo/p/3313470.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110060.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 基于php教师档案管理系统毕业设计

    基于php教师档案管理系统毕业设计获取项目源文件,联系Q:1415736481,可指导毕设,课设随着经济的发展和社会的进步,高校的现代化管理逐渐被人们所重视,利用计算机对高校的管理在各个领域中都有广阔的发展空间和前景。高校教师档案管理系统的设计与实现对高等院校的决策者和管理者来说至关重要,对教育系统来说更是不可缺少的。本系统采用PHP语言和MySQL数据库等技术,基于B/S模式,根据管理员、教务处管理员、教师三种不同的用户权限…

    2022年10月29日
  • 树莓派容易坏吗_树莓派的使用

    树莓派容易坏吗_树莓派的使用清华下载地址下载地址下载地址xshell下载地址③树莓派插入TF卡后,等连接上手机就可查看IP地址2.远程登录①打开后选择新建②软件更新源③系统更新源④开始更新4.图形化显示界面为方便大家更直观的感受,可以下载一个图形化的显示桌面,这里推荐VNC(windows也自带了该功能,因为太卡了故不推荐,想用的可以试试:远程桌面连接)⭐有条件的可以直接连上显示屏使用①VNC的网盘连接,大家直接下载就行②打开树莓派的VNCServer(默认关闭)A.在

    2022年10月9日
  • python 面向对象(进阶篇)

    python 面向对象(进阶篇)上一篇《Python面向对象(初级篇)》文章介绍了面向对象基本知识:面向对象是一种编程方式,此编程方式的实现是基于对类和对象的使用类是一个模板,模板中包装了多个“函数”供使用(可以讲多函数

    2022年7月5日
  • 【转载】ASP和ASP.NET根本区别

    【转载】ASP和ASP.NET根本区别

    2021年11月21日
  • linux下设置定时执行脚本「建议收藏」

    linux下设置定时执行脚本「建议收藏」linux下设置定时执行脚本1.首先安装所需程序并启动crontabs是设置周期性被执行的指令yuminstallvixie-cronyuminstallcrontabsservicecrondstartservicecrondstatus出现以下信息则表示crond启动成功●crond.service-CommandSchedulerLoaded…

    2022年7月17日
  • 英语词根词缀记忆法总口诀_词根词缀记忆法的利弊

    英语词根词缀记忆法总口诀_词根词缀记忆法的利弊英语词根词缀记忆法(全集) 前言        英语单词的构词规律也是有规可寻的。单词是由词素构成的,词素派生出词义。单词的数量虽然浩瀚,但构成其的词素的数量却是有限的。如果掌握了词素,懂得基本的构词方法,就能容易地识记单词,突破记忆单词这一难关。词素又是由词根和词缀两部分组成的,而词缀又分为前缀和后缀。常用的252个词根和289个词缀,掌握了这些词素便可掌握绝大

    2022年9月19日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号