栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java 学习 输出一个整数的二进制数、八进制数、十六进制数。

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java 学习 输出一个整数的二进制数、八进制数、十六进制数。

 使用简单的for循环进行 一个十进制数 转换为二进制数、八进制数、十六进制数。

(2)十进制转二进制

十进制整数转二进制数:“除以2取余,逆序排列”(除二取余法)

(2)十进制转八进制

十进制整数转八进制数:“除以8取余,逆序排列”(除八取余法)

(2)十进制转十六进制

十进制整数转十六进制数:“除以十六取余,逆序排列”(除十六取余法)

具体实现

二进制

现定义一个数组,然后把用2整除这个数,得到商和余数,再用商继续除以2,直到值为0结束循环,
//然后把这些余数放在数组中,输出即可;

其他进制原理相同

代码

import java.util.Scanner;

public class Demo00 {
	public static void main(String[] args) {
		System.out.println("请输入一个整数");
		Scanner sc = new Scanner(System.in);
		int number = sc.nextInt();
		// 转换为二进制
		int[] numEr = new int[100];
		int indexEr = 0;
		for (int i = number; i > 0; i /= 2, indexEr++) {
			numEr[indexEr] = i % 2;
		}

		System.out.println("二进制:");
		for (int i = indexEr - 1; i >= 0; i--) {
			System.out.print(+numEr[i]);
		}
		System.out.println();
		// 转换为八进制
		int[] numBr = new int[100];
		int indexBr = 0;
		for (int i = number; i > 0; i /= 8, indexBr++) {
			numBr[indexBr] = i % 8;
		}
		System.out.println("八进制:");
		for (int i = indexBr - 1; i >= 0; i--) {
			System.out.print(numBr[i]);
		}
		System.out.println();
		// 转换为十六进制
		int[] nums = new int[100];
		int index = 0;
		for (int i = number; i > 0; i /= 16, index++) {
			nums[index] = i % 16;
		}
		System.out.println("十六进制:");
		for (int i = index - 1; i >= 0; i--) {
			if (nums[i] == 10) {
				System.out.println("A");
			} else if (nums[i] == 11) {
				System.out.println("B");
			} else if (nums[i] == 12) {
				System.out.println("C");
			} else if (nums[i] == 13) {
				System.out.println("D");
			} else if (nums[i] == 14) {
				System.out.println("E");
			} else if (nums[i] == 15) {
				System.out.println("F");
			} else {
				System.out.print(nums[i]);
			}

		}

	}
}

 结果

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021500.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号