解题思路:题目不难,就是转完而精致再转回来,但是题目的描述有点恶心

注意事项:

注意题目中说的是从右端开始的第四到第七位,但是截取出来的数字还是要求从左往右计算的。我注释了很多测试代码,直到最后面看了其他人题解才明白过来

参考代码:

package cn.yzf.clanguageTest;
import java.util.*;

public class Main {
   public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
         int n = scanner.nextInt();
         StringBuffer sbuf = new StringBuffer();
         sbuf.append(Integer.toBinaryString(n));     //数据存储并转化为二进制
       //System.out.println(sbuf.reverse());
         sbuf = sbuf.reverse();
         String str = sbuf.substring(4,8);   //截取
         StringBuffer sbf = new StringBuffer();
         sbf.append(str);
         sbf = sbf.reverse();   //对截取的数字进行逆序
         str = sbf.toString();
         //String str=sbuf.substring(sbuf.length()-8, sbuf.length()-4);   //另一种截取方式
         //int a =Integer.parseInt(String.valueOf(str));    //测试二进制数据是否正确
         int a =Integer.parseInt(String.valueOf(str),2);

         System.out.println(a);

   }
}


//        =============Dragon be here!==========/
//            ┏┓   ┏┓
//           ┏┛┻━━━┛┻┓
//           ┃       ┃
//           ┃   ━   ┃
//           ┃ ┳┛ ┗┳ ┃
//           ┃       ┃
//           ┃   ┻   ┃
//           ┃       ┃
//           ┗━┓   ┏━┛
//             ┃   ┃神兽保佑
//             ┃   ┃代码无BUG!
//             ┃   ┗━━━┓
//             ┃       ┣┓
//             ┃       ┏┛
//             ┗┓┓┏━┳┓┏┛
//              ┃┫┫ ┃┫┫
//              ┗┻┛ ┗┻┛
//         ━━━━━━神兽出没━━━━━━

 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区