zoukankan      html  css  js  c++  java
  • 字符串、数字常用操作

    目录:

    1、左补0操作;

    2、右边补空格;

    3、去掉字符串前面0;

    4、截取小数点后两位;

    5、四舍五入,保留小数点后两位;

     功能:

    1、左补0操作:

        /**
         * 左边补0
         * @param length 格式化数字长度
         * @param number 格式化数字
         * @return 格式化后数字。(如length:5,number:200,结果:00200)
         */
        public static String lpadZero(int length, Long number) {
            String f = "%0" + length + "d";
            return String.format(f, number);
        } 

    测试示例:

        public static void main(String[] args) {
            int length = 8;
            Long num = 200L;
            String val = lpadZero(length, num);
            System.out.println("左边补0操作:"+val);
        }

    运行结果:

    2、右边补空格

        /**
         * 右边补空格
         * @param length 格式化字符串长度
         * @param val 格式化字符串
         * @return 格式化后字符串。(如length:5,val:200,结果:200  )
         */
        public static String lpadSpace(int length, String val) {
            return String.format("%1$-"+length+"s",val);
        }

    测试示例:

        public static void main(String[] args) {
            int length = 8;
            String str = "hello";
            String val = lpadSpace(length, str);
            System.out.println("右边补空格操作:"+val);
        }

    运行结果:

    3、去掉字符串前面0

        /**
         * 去掉字符串前面0
         * @param str
         * @return 格式化后字符串。(如str:002,结果:2)
         */
        public static String deleteFirstZero(String str) {
            return str.replaceAll("^(0+)", "");
        }

    测试示例:

        public static void main(String[] args) {
            String str = "000000200";
            String val = deleteFirstZero(str);
            System.out.println(val);
        }

    运行结果:

    4、截取小数点后两位

        /**
         * 截取小数点后两位
         * @param f 值
         * @return 格式化后的值
         */
        public static String doubleDowForM2(Double f) {  
            DecimalFormat df = new DecimalFormat("0.00"); 
            df.setRoundingMode(RoundingMode.DOWN); // 截取操作
            return df.format(f);
        }

    测试示例1:

        public static void main(String[] args) {
            Double doub = 2.56899;
            String str = doubleDowForM2(doub);
            System.out.println(str);
        }

    运行结果1:

    测试示例2:

        public static void main(String[] args) {
    //        Double doub = 2.56899;
            Double doub = 2.533333;
            String str = doubleDowForM2(doub);
            System.out.println(str);
        }

    运行结果2:

    5、四舍五入,保留小数点后两位

        /**
         * 四舍五入,保留小数点后两位
         * @param f
         * @return
         */
        public static String doubleDowForM2Rounding(Double f) {  
            DecimalFormat df = new DecimalFormat("0.00"); 
            return df.format(f);
        }

    测试示例1:

        public static void main(String[] args) {
            Double doub = 2.56899;
            String str = doubleDowForM2Rounding(doub);
            System.out.println(str);
        }

    运行结果1:

    测试示例2:

        public static void main(String[] args) {
    //        Double doub = 2.56899;
            Double doub = 2.533333;
            String str = doubleDowForM2Rounding(doub);
            System.out.println(str);
        }

     运行结果2:

  • 相关阅读:
    解决Linux下Qt程序报『QString::arg: Argument missing: 无法解析SSLv2_client_method中的符号』错误
    中介者模式之我们结婚吧
    POJ 2141 Message Decowding(map)
    Cocos2dx之Box2D具体解释 设置物体回复力
    Android之Window
    opencv源代码分析:cvCreateMTStumpClassifier最优弱分类器的代码框架
    LeetCode总结,二分法一般性总结
    Change Number to English By Reading rule of money
    在多台PC上进行ROS通讯-学习笔记
    编程之美初赛第二场 奇妙的数列
  • 原文地址:https://www.cnblogs.com/frank-quan/p/5736048.html
Copyright © 2011-2022 走看看