表示二进制(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);
	}
}
相关推荐
Ivanqhz6 分钟前
Rust &‘static str浅析
java·前端·javascript·rust
Wang's Blog1 小时前
Go-Zero项目开发24: 基于Bitmap实现群聊消息已读未读
开发语言·后端·golang
weixin_419658313 小时前
Docker 搭建 Jenkins 服务
java·docker·jenkins
captain3763 小时前
多线程线程安全问题
java·java-ee
吃好睡好便好4 小时前
MATLAB中图像的读取、写入和显示
开发语言·图像处理·学习·计算机视觉·matlab
CoderYanger4 小时前
A.每日一题:1979. 找出数组的最大公约数
java·程序人生·算法·leetcode·面试·职场和发展·学习方法
灵极海4 小时前
LangChain4j RAG 实战完整指南:从入门到踩坑
java·langchain
yaoxin5211234 小时前
476. Java 反射 - 调用方法
java·开发语言
猫头虎4 小时前
什么是ZCode for GLM-5.2?
开发语言·人工智能·python·科技·算法·ai编程·ai写作
Ivanqhz5 小时前
Rust Lazy浅析
java·javascript·rust