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

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

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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java-谢尔宾斯基地毯

    java-谢尔宾斯基地毯java 谢尔宾斯基地毯本程序将使用递归画出谢尔宾斯基地毯 首先我们将主类继承 JFrame 类 因为要使用 JFrame 类生成一个窗体 然后在其中定义一个初始化方法 publicvoidin this setSize 800 600 this setDefaultCl MyJFrame EXIT ON CLOSE this setLo

    2025年12月12日
    6
  • 《数据库系统概论》之数据库设计六步骤(需求、概念、逻辑、物理、实施、运行维护)

    《数据库系统概论》之数据库设计六步骤(需求、概念、逻辑、物理、实施、运行维护)文章目录0.一图总览1.数据库设计概述及六步骤简介2.需求分析—步骤一2.1收集资料2.2分析整理2.3数据流图2.4数据字典2.5用户确认3.概念结构设计—步骤二3.1E-R模型3.2建立E-R模型4.逻辑结构设计—步骤三4.1E-R模型向关系模式的转换4.2关系模式的优化4.3设计用户子模式5.物理结构设计—步骤四5.1确定数据库的物理结构5.2物理结构进行评价6.数据库实施—步骤五7.数据库运行维护—步骤六0.一图总览1.数据库设计概述及

    2022年10月7日
    2
  • mpVue_mpvue是什么

    mpVue_mpvue是什么mpvue配置flyio安装flyio配置fly安装flyiofly中文文档https://wendux.github.io/dist/#/doc/flyio/interceptor使用npm安装fly:npminstallflyio在src/main.js文件下引入其它引入方式请查看https://github.com/wendux/fly配置fly在使用fly请求借口是,…

    2025年10月9日
    2
  • stm32数据手册boot_stm32f103中文手册.pdf

    stm32数据手册boot_stm32f103中文手册.pdfstm32f103中文手册STM32F103x6STM32F103x8STM32F103xB增强型,32位基于ARM核心的带闪存、USB、CAN的微控制器7个定时器、2个ADC、9个通信接口功能初步信息■核心−ARM32位的Cortex™-M3CPU−…

    2022年10月16日
    3
  • java中break与continue区别_brake和break怎么区别

    java中break与continue区别_brake和break怎么区别前段时间学Java时,在break与continue上的理解与应用总觉得欠点什么,虽说也能模模糊糊地掌握,可深度总是不够,心里边也总是不那么亮堂。现在学JavaScript时见到一个不错的例子,现在把它总结下。continue时,跳出本次循环,继续执行下次循环。For(inti=0;i<=5;i++){If(i==3)continue;System.out.println("T

    2022年5月3日
    80
  • webservice优缺点以及使用框架_web前端主流框架有哪些

    webservice优缺点以及使用框架_web前端主流框架有哪些原文:https://www.cnblogs.com/firstdream/p/5575928.html1摘要 开发webservice应用程序中离不开框架的支持,当open-open网站列举的就有很多种,这对于开发者如何选择带来一定的疑惑。性能Webservice的关键要素,不同的框架性能上存在较大差异,而当前在官方网站、网络资料中可以方便的找到各自框架的介绍,但是很少有针对不同框架性能测试数据…

    2025年12月6日
    4

发表回复

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

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