扫码关注官方订阅号
认证0级讲师
卡在了将char[]分组的步骤上,以及之后将其转为int的步骤
直接这样搞,每5个转换为一个int,样例代码(可能有BUG):
char[] chArr = {0,0,0,0,1,1,1,0,0,1}; for (int i = 0; i < chArr.length; i+=5) { // 直接组装为int int result = 0; for (int j = 0; j < 5; j++) { result += (int) chArr[i+j] * MathUtil.pow(2, 4-j); } System.out.println(result); } /* MathUtil.java */ /** * 整数的几次方 * @param baseNumber 底数 * @param exponent 指数 * @return 计算出的值 */ public static int pow(int baseNumber, int exponent) { if (exponent < 0) { throw new IllegalArgumentException("exponent cant not be a negative number"); } if (exponent == 0) { return 1; } return baseNumber << (exponent - 1); }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
直接这样搞,每5个转换为一个int,样例代码(可能有BUG):