关于#java#的问题:输出格式:若输入的整数在0~15范围内,则输出对应的十六进制数

编写一个程序,提示用户输入0~15之间的一个整数,显示其对应的十六进制数。

输入格式:
输入一个0~15之间的整数。

输出格式:
若输入的整数在0~15范围内,则输出对应的十六进制数。否则输出“Invalid input”。

定义一个长度为16字符的数组,存储0 ~ 9和A ~ F,把输入值当下标取字符即可

public class Test {
    public static void main(String []args) {
        Scanner input = new Scanner(System.in);
        char a[16] = "013456789ABCDEF";
        int n = input.nextInt();
        while(n>15 || n<0)
        {
            System.out.println("请重新输入0-15之间的整数");
            n = input.nextInt();
        }
        System.out.println(a[n]);
}

题目代码如下

import java.util.Scanner;
public class Demo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
       System.out.println("请输入一个0~15之间的整数:");
        int i = sc.nextInt();
        String result = getResult(i); //调用方法获得结果
        System.out.println(result);
    }
 
    private static String getResult(int a) {
        if (a<=15&&a>=0) {
            return Integer.toHexString(a).toUpperCase(); //将整数转为16进制并转为大写
        }
        return "Invalid input";
    }
}