表示二进制(StringBuffer)和 十六进制转换为十进制(char[])


题目

java 复制代码
public class Main {
	public static void main(String[] args) {
		//1到10000至少需要多少个二进制位
		//求10000需要多少个二进制位
		StringBuffer sb = new StringBuffer();
		//n:10000 m:2
		int n = 10000;
		int m = 2;
		while(n!=0) {
			sb.append(n%m);
			n/=m;
		}
		System.out.println(sb.reverse().toString().length());
	}
}


题目

java 复制代码
public class Main {
	public static void main(String[] args) {
		//十六进制2021ABCD转换为十进制
		//DCBA1202
		//01234567 次方
		StringBuffer sb = new StringBuffer("2021ABCD");
		String s = sb.reverse().toString();//DCBA1202
		char[] c = s.toCharArray();
		int sum = 0;
		for(int i=0;i<c.length;i++) {
			if(c[i]>='A'&&c[i]<='F') {
				sum+=(c[i]-'A'+10)*Math.pow(16,i);
			}else {
				sum+=(c[i]-'0')*Math.pow(16,i);				
			}
		}
		System.out.println(sum);
	}
}
相关推荐
薛定猫AI2 分钟前
【深度解析】GLM-5.2 与 Z-Code:AI 编程智能体的原理拆解与 Python 调用实战
开发语言·人工智能·python
没文化的阿浩3 分钟前
【C++】详解继承机制
开发语言·c++
文祐9 分钟前
C语言用双向链表实现单调递减(递增)队列
c语言·开发语言·链表
雪的季节16 分钟前
OCR: windows 环境基于c++的 paddle ocr 编译【CPU版本】编译成dll ,在QT、VS中调用
开发语言
剑挑星河月23 分钟前
94.二叉树的中序遍历
java·算法·leetcode
2301_8011847529 分钟前
docker 工作
java·docker·容器
老前端的功夫39 分钟前
【Java从入门到入土】47:构建工具:Maven与Gradle的战争
java·python·maven
aaPIXa62240 分钟前
C++模板元编程:在编译期完成计算,实现零运行时开销
java·开发语言·c++
夜郎king1 小时前
RuoYi-Vue3 企业级后台快速落地实战指南
java·开发语言
江华森2 小时前
exp01_Python_数据类型
开发语言·python