闲着无聊看书时发现在String的介绍里写了判断以某字符串开头的方法。突然想到前几天做过的题目有优化的空间。将变量"zhengfu"删除,并使用String方法startsWith("-")判断首字母正负号

下方为优化后代码

package oj1002;

import java.util.Scanner;
/**
 * 该程序需注意分两种情况
 * 1、有小数,将小数点作为索引,并保留两位小数或补全两位小数
 * 2、无小数,直接按程序输出
 * @author Renxing
 * @time 2020年11月24日 21:45
 */
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String in = sc.nextLine();
        if(in.indexOf('.')==-1) {
            
            //char zhengfu=in.charAt(0);
            
            //if (zhengfu == '-') {
            if (in.startsWith("-")) {
                
                System.out.println(in.substring(1)+".00");
            }else {
                System.out.println(in+".00");
            }
        }else {
            String zhengshu = in.substring(0,in.indexOf('.'));
            //char zhengfu=in.charAt(0);
            String xiaoshu = in.substring(in.indexOf('.'));
            if (xiaoshu.length() >= 3) {
                xiaoshu = xiaoshu.substring(0,3);
            }else {
                xiaoshu = xiaoshu+'0';
            }
            //if (zhengfu == '-') {
            if (in.startsWith("-")) {
                System.out.println(zhengshu.substring(1)+xiaoshu);
            }else {
                System.out.println(zhengshu+xiaoshu);
            }
        }    
    }
}
 

原文:

Last modification:August 26, 2021
如果觉得我的文章对你有用,请随意赞赏