表示二进制(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);
	}
}
相关推荐
有梦想的咸鱼_几秒前
go实现并发安全hashtable 拉链法
开发语言·golang·哈希算法
海阔天空_20136 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
天下皆白_唯我独黑13 分钟前
php 使用qrcode制作二维码图片
开发语言·php
小灰灰__13 分钟前
IDEA加载通义灵码插件及使用指南
java·ide·intellij-idea
夜雨翦春韭16 分钟前
Java中的动态代理
java·开发语言·aop·动态代理
小远yyds18 分钟前
前端Web用户 token 持久化
开发语言·前端·javascript·vue.js
何曾参静谧30 分钟前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
程序媛小果37 分钟前
基于java+SpringBoot+Vue的宠物咖啡馆平台设计与实现
java·vue.js·spring boot
追风林42 分钟前
mac m1 docker本地部署canal 监听mysql的binglog日志
java·docker·mac
芒果披萨1 小时前
El表达式和JSTL
java·el