牛客网 华为机试 进制转换

在这里插入图片描述
本题是要将十六进制的字符串转换成十进制。看到题目第一眼就想到用map进行十六进制和十进制的映射。
然后我们需要注意,字符串前面会有0X,这只是一个标识十六进制的标识符,没有具体数字意义,我们在转换的时候,需要把它去掉。
然后我们需要知道,要想把十六进制转换成十进制,我们有递推公式
res = resBASE+map.get(ch)
在这里res初始为0,BASE=16。比如,我们把1A转换成十进制应该是26。按照公式来推,res = 0
16+1=1 然后res = 1*16+10=26。

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {private final static int BASE = 16;private static Map<Character, Integer> map = new HashMap<Character, Integer>() {{put('0', 0);put('1', 1);put('2', 2);put('3', 3);put('4', 4);put('5', 5);put('6', 6);put('7', 7);put('8', 8);put('9', 9);put('A', 10);put('B', 11);put('C', 12);put('D', 13);put('E', 14);put('F', 15);put('a', 10);put('b', 11);put('c', 12);put('d', 13);put('e', 14);put('f', 15);}};public static void main(String[] args) {Scanner sc = new Scanner(System.in);while(sc.hasNext()){String number = sc.nextLine();int res = getDecimal(number.substring(2));System.out.println(res);}}public static int getDecimal(String number){int res = 0;for(char ch:number.toCharArray()){res = res*BASE+map.get(ch);}return res;}
}

注意:
题中map集合的写法被称为双重大括号初始化(Double Brace Initialization)的Java写法。这种写法使用了实例初始化块,它允许在创建对象时进行额外的初始化操作。

next() 与 nextLine() 区别
next():

1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。

nextLine():
1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/723586.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【视频转码】基于RK3588的视频转码探索

传统的视频转码服务基本都是基于X86下CPU、GPU转码&#xff0c;对硬件性能、功耗、成本来说都比较高。从技术角度来说现有视频转码技术有&#xff1a; 视频编码转变&#xff1a; 1. H.264 > H.265 保持视频分辨率、清晰度不变情况下&#xff0c;更改视频压缩方式&#xff0…

2024Java面试题知识点总结,一名毕业三年的女程序媛面试头条经验

程序员&#xff1a;给多少工资&#xff0c;干多少事 我们不是经常会看到一个关于西游记的“悖论”吗&#xff1a; 为什么孙悟空初期大闹天宫的时候那么厉害&#xff1f;因为他自己当老板&#xff0c;打一群天庭的打工仔。 为什么取经路上又变得不行了&#xff1f;作为一个打工…

牛客网 华为机试 取近似值

本题是要实现四舍五入。我们采用float的数据类型&#xff0c;因为这样数据精度更高。然后我们可以把得到的数据0.5&#xff0c;然后再转换成int数据类型&#xff0c;因为转换成int数据类型的时候是向下取整的&#xff0c;比如4.9转换成int就是4&#xff0c;4.2转换成int也是4。…

【Redis】高级特性 - 有序集合

文章目录 1. 有序集合的基本概念2. 使用场景2.1 排行榜2.2 时间轴2.3 范围查找 3. 基本操作3.1 添加成员3.2 查找成员排名3.3 查找成员分数3.4 范围查找3.5 删除成员 4. 示例演练4.1 添加成员和分数4.2 查找成员排名和分数4.3 查找排行榜4.4 删除成员 5. 有序集合的应用之美 在…

微服务笔记

什么是微服务? 微服务是一种经过良好架构设计的分布式架构方案&#xff0c;微服务架构特征: 1.单一职责:微服务拆分粒度更小&#xff0c;每一个服务都对应唯一的业务能力&#xff0c;做到单一职责&#xff0c;避免重复业发。 2.面向服务:微服务对外暴露业务接口 3.自治:团…

代码随想录算法训练营第52天| 300.最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

300.最长递增子序列 完成 思路&#xff1a; 本题dp[i]代表[0,i]数组的最长递增子序列&#xff0c;一开始的想法也是两层for循环&#xff0c;但总觉得这题不该这么烦。然后看了随想录的题解&#xff0c;也是两层for循环&#xff0c;所以有了想法就要去尝试。 本题初始化也是个…

react中tab选项卡切换

react中tab选项卡切换&#xff0c;直接上代码&#xff0c;简单易懂 jsx代码 /* eslint-disable react-hooks/exhaustive-deps */ import React, { useEffect, useState } from "react"; import DocumentTitle from react-document-title import styles from ./…

《More Effective C++》- 极精简版 21-30条

本文章属于专栏《业界Cpp进阶建议整理》 继续上一篇《More Effective C》- 极精简版 11-20条。本章我会继续讲解我对21-30条的极精简的理解。 21、利用重载技术避免隐式转换 const A operator(const A& a1, const A& a2) &#xff0c;且有构造函数 A(int){}那 A a3 2…

ctf_show笔记篇(web入门---文件上传)

文件上传 151&#xff1a;简单的前端验证&#xff0c;有多种绕过方法 152&#xff1a;简单后端验证&#xff0c;不知道过滤了那些后缀&#xff0c;我尝试以后都可以上传 153&#xff1a;利用.user.ini文件&#xff0c;虽然能上传.pht这一类文件但访问时只会下载下来 这里就…

列表吸顶分组之按首字母分组国家选区号

列表粘性分组之按首字母分组国家选区号 Android原生版本 直接先看UI图,效果如下 本来看起来也不难,我就想着上面常用区号那块不动,下面的列表滑动就行,但IOS说他滑动的时候上面也滑上去了,好吧,这也行;但最终效果做出来后,IOS滑动后会有按照国家名称首字母进行粘性分…

低代码:数智化助力新农业发展

随着科技的飞速发展和数字化转型的深入推进&#xff0c;低代码开发平台正逐渐成为软件开发的热门话题。尤其在农业领域&#xff0c;低代码技术为传统农业注入了新的活力&#xff0c;助力新农业实现高效、智能的发展。 低代码开发平台的概念与特点 随着科技的飞速发展&#xff0…

穿越数字防线:SSH协议的全景解析与未来展望

SSH基本概念 SSH&#xff08;Secure Shell&#xff09;是一个用于计算机网络的加密协议&#xff0c;设计用来提供一种安全的方式通过不安全的网络进行远程登录和其他网络服务。SSH协议主要用于远程管理系统和安全地传输信息。 SSH的历史背景 SSH由Tatu Ylnen于1995年开发&am…

IT廉连看——Uniapp——应用生命周期

IT廉连看——Uniapp——应用生命周期 [IT廉连看] 目标&#xff1a; 了解APP.vue这个页面 了解所有的应用生命周期 熟练编写常用的应用生命周期 1、App.vue&#xff1a; 在UniApp中&#xff0c;App.vue是应用的根组件。它类似于其他前端框架中的根组件&#xff0c;如Vue…

@Component和@Bean的区别

Component、Bean都是使用注解的形式来定义bean&#xff0c;从功能上讲是一样的 Component&#xff08;包括&#xff20;Service、Repository&#xff09;用于自动检测和使用类路径扫描注解&#xff0c;自动装配 bean。注解类和bean 之间是存在隐性的映射关系的&#xff0c;一个…

基于springboot的精品在线试题库系统设计与实现(程序+数据库+文档)

** &#x1f345;点赞收藏关注 → 私信领取本源代码、数据库&#x1f345; 本人在Java毕业设计领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目&#xff0c;希望你能有所收获&#xff0c;少走一些弯路。&#x1f345;关注我不迷路&#x1f345;** 目录 一、研…

广东工行客户在手机银行上进行医保查询

现在的手机银行功能越来越多&#xff0c;对于一些不常用的功能&#xff0c;更是不知道该在哪里找到及访问&#xff0c;像医保查询&#xff0c;我原来就不知道怎么访问&#xff0c;问了别人才知道&#xff0c;特记录一下&#xff0c;以方便下次要访问时能找到。 1、从 手机银行…

考勤签到作业表单周期打卡评分小程序开发

表单考勤签到作业周期打卡评分小程序开源版开发 这是一款功能丰富的自定义表单统计小程序&#xff0c;涵盖信息填表、预约报名、签到打卡、活动通知、报名投票以及班级统计等多项功能。 高度灵活与自定义 该小程序为用户提供高度灵活的自定义表单系统。正文描述字段包含文本…

JSP语言基础(案例代码)

JSP基本语法 编写一个JSP页面&#xff0c;在该页面中显示当前时间 <% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8" import"java.util.*"%> <% page import"java.text.SimpleDateF…

独孤思维:打着永久免费更新的幌子,诱惑你付费

01 说一个副业圈讳莫如深的真相。 很多人贪便宜&#xff0c;外面收费几百上千的工具&#xff0c;结果有的地方只卖几十块。 当然不是同一个工具&#xff0c;背后做了阉割和限制。 所以才便宜。 更有甚者&#xff0c;打着永久免费更新的幌子&#xff0c;诱惑你付费。 然后…

马蹄集 开学季活动赛

目录 最大的平均值 门票 二阶前缀和 最大异或和 背军理 信号灯 切蛋糕 矩形 矩阵01变 运动会进行中 三连 距离平方和 最大的平均值 黄金时间限制:1秒巴 占用内存:128 M少难度: 给一个数组&#xff0c;长度为n&#xff0c;找一个长度大于等于m的子区间&#xff0c;使…