Java基础算法题(32):取一个整数a从右端开始的4~7位。

查看所有50道基础算法题请看:

Java的50道基础算法题

package Demo32Number_Cut;
import java.util.Scanner;
/**
 * 取一个整数a从右端开始的4~7位。
 */
/*
分析:首先获取用户输入的一个整数,获取该数的长度
     而且,这种截取,当成字符串来处理最简单,最后再解析成整数不就好了嘛?
     想用数字的话用Long.parseLong(cons)解析为数字即可。
 */
public class Number_Cut {
    public static void main(String[] args) {
        System.out.println("请输入一个大于等于7位的整数:");
        Scanner sc = new Scanner(System.in);
        String nums = sc.next();
        try{
            //判断用户有没有输入负数,ascii码表中负号为45
            if(nums.charAt(0)==45){
                nums=nums.substring(1);
                String cons = nums.substring(nums.length()-6,nums.length()-3);
                long l = Long.parseLong(cons);
                System.out.println("该数从右端开始的4~7位为:"+l);
            }else{
                String cons = nums.substring(nums.length()-6,nums.length()-3);
                long l = Long.parseLong(cons);
                System.out.println("该数从右端开始的4~7位为:"+l);
            }
        }catch(Exception e){
            System.out.println("您输入的数字有误,请查看是否输入了非数字字符,或者不足7位数....");
        }
    }
}
发布了54 篇原创文章 · 获赞 1 · 访问量 2297

猜你喜欢

转载自blog.csdn.net/weixin_44803446/article/details/105377013
今日推荐