有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

转换器Java字符串转换为二进制

我需要用Java编写一个转换器,它要求用户输入输入源字母表目标字母表)。然后,代码应提供一个答案,该答案已将源字母表转换为目标字母表

字母表应以以下形式给出:

-“0123456789”(基数10)

-“字母表”

-“0123456789ABCDEF”(十六进制)等

每个字母表值都是一个唯一的ASCII字符

以下是我从代码中寻找的一些示例输入和答案:

convert("129","0123456789","01") === "10000001"
convert("FF","0123456789ABCDEF","0123456789") === "255"
convert("svip","abcdefghijklmnopqrstuvwxyz","0123456789ABCDEF") === "50C23"

如果能帮助我着手解决这个问题,我将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    首先,创建一个从十进制转换为十六进制的函数

    最好的工具是模运算符(x%y)和除法运算符(x/y)。模(或模)给你余数,所以如果你想象有一个像24的数字,24%16=8,而24/16=1。请注意,如果我有31%的16分,我将得到15分

    使用这些工具,您可以对输入的小数进行操作,并重复按基数对数字进行mod,以获得余数,然后将小数设置为自身除以基数

    例如

    第一步。 小数点:31 字符串:“” 基数:16

    31%16=15 31/16=1

    第二步 小数点:1 字符串:“E” 基数:16

    1%16=1 1/16=1

    第三步 小数点:0 字符串:“1E” 基数:16

    希望有帮助