`

String 工具类

阅读更多
package com.util;

import java.text.DecimalFormat;
import java.util.Random;

/**
 * StringUtil.java
 * @author xiongmin
 */
public class StringUtil {
    
    /**
     * 生成一个定长的纯0字符串
     * @param length  字符串长度
     * @return 纯0字符串
     */
    public static String zeroString(int length) {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < length; i++) {
            sb.append('0');
        }
        return sb.toString();
    }
    
    public static String toFixdLengthString(int num, int fixdlenth) {
        StringBuffer sb = new StringBuffer();
        String strNum = String.valueOf(num);
        if (fixdlenth - strNum.length() >= 0) {
            sb.append(StringUtil.zeroString(fixdlenth - strNum.length()));
        } else {
            throw new RuntimeException("将数字" + num + "转化为长度为" + fixdlenth + "的字符串发生异常!");
        }
        sb.append(strNum);
        return sb.toString();
    }
    
    public static String getUniqueString(int length){
 	   String str = "abcdefghijklmnopqrstvuwxyz0123456789ABCDEFGHIJKLMNOPQRSTVUWXYZ";
 	   int strLen = str.length();
 	   Random rand = new Random();
 	   StringBuilder sb = new StringBuilder();
 	   for(int i=0;i<length;i++){
 		   int index = rand.nextInt(strLen);
 		   sb.append(str.charAt(index));
 	   }
 	   return sb.toString();
    }
    
    
    /**
     *  将double数据保留两位小数
     * @param value
     * @param value2
     */
    public static String getDoubleTwo(String value) {  
        DecimalFormat df = new DecimalFormat("0.00");  
        double num1 = Double.parseDouble(value);  
        String back = df.format(num1);  
        
        return back;
    }  
    
    /**
     * 将字符串转换doule保留两位数据转换为百分比
     * @param value
     * @param value2
     */
    public static String getBaiFenBi(String value) {  
        DecimalFormat df = new DecimalFormat("0.00");  
        double num1 = Double.parseDouble(value);  
        String num2 = df.format(num1);  
        double num3 =  Double.parseDouble(num2) * 100;
        int num4 = (int)num3;
        String back = num4 + "%";
        
        return back;
    }  
    
    /**
     * 取两double值的商且保留两位小数
     * @param value
     * @param value2
     */
    public static String getHundred(String value, String value2) {  
        DecimalFormat df = new DecimalFormat("0.00");  
        double num1 = Double.parseDouble(value);  
        double num2 = Double.parseDouble(value2);  
        double num3;  
        if (num2 > 0) {  
            num3 = num1 / num2;  
        } else {  
            num3 = 0;  
        }  
        return df.format(num3);  
    }  
    
    /**
     * 取两double值的商且保留两位小数,转换为百分比,取绝对值
     * @param value
     * @param value2
     * @return
     */
    public static String getHundredBfb(String value, String value2) {  
        String str = getHundred(value,value2);
        double dou =  Double.parseDouble(str) * 100;
        int num = Math.abs((int)dou);
        String back = num + "%";
        return back;
    }  
    
    /**
     * null值转换
     * @return
     */
    public static String strNullZh(String str){
    	if(null == str || str.equals("")){
    		return "0";
    	}else{
    		return str;
    	}
    }
    
    
    public static void main(String[] args) {
    	long start = System.currentTimeMillis();
    	for(int i=0;i<10000;i++){
    		String s = StringUtil.getUniqueString(20);
            System.out.println(s); 
    	}
         
    	long end = System.currentTimeMillis();
    	System.out.println(end-start);
    }
}

 

分享到:
评论

相关推荐

    String工具类String工具类String工具类

    String工具类String工具类String工具类

    javaString工具类

    String工具类

    安卓String工具类

    安卓String工具类,验证是否是合法的邮箱 char类型转封装 复制数据Assets文件夹里的文件 时间格式

    String工具类

    String工具类,包括对String对象的一些常用操作方法。

    java工具类(String)

    Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

    String和Date工具类

    String工具类:校验是否包含表情、字符串切割、过滤空白字符、过滤特殊字符(换行符、回车符、制表符) Date工具类:时间格式化转化、时间获取、时间加减(年月日时分)、数字时间校验

    String封装工具类

    java编写的一个封装了一些比较实用的功能,具体看说明文档

    android 开发常用工具类集合

    String工具类 Toast工具类 自定义圆形imageView (CircleImageView) 自定义loadingDialog 自定义带旋转动画的loadingDialog 2018.10.27 修改Toast工具类 添加可以在服务中进行提示的toast 添加设备信息工具...

    StringUtil工具类

    StringUtil工具类 是对String 对象封装操作

    个人总结常用经典Utils工具类

    1、Utils工具类有String工具类、XmlNode节点工具类、BeanFactory相关、Common工具类、Cookie工具类、Date工具类、Http工具类、JDBC工具类、日志Log工具类、Servlet相关等。2、工具类省了重复造轮子的工作,可以直接...

    StringUtil.java工具类

    StringUtil工具类java学习的好东西!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...

    C 的String类的功能很多很有用

    c++是一门好语言,其中的点点滴滴都充满了力量, 跟人以无限的瞎想,赶快加入我们的c++生力大军吧,有什么不会的,来问我,哈哈哈。

    Android静默安装常用工具类

    String工具类,可用于常见字符串操作,如: isEmpty(String str) 判断字符串是否为空或长度为0 isBlank(String str) 判断字符串是否为空或长度为0 或由空格组成 utf8Encode(String str) 以utf-8格式编码 ...

    比较全的java工具类

    功能比较全面的java工具类。包括数据库方面的,日期格式方面的,文件操作的,网络操作,String工具类以及常用类。

    String帮助工具类

    主要集成了java开发中对String类型 和一些常用到的方法进行的整合

    java常用工具类

    Java工具类,总结好的,放入即可使用,包含date工具类string工具类等

    java工具类 string转10进制sacii byte数组再转16进制字符数组再转16进制byte数组 string与BCD互转

    java工具类 : string转10进制sacii byte数组、 10进制sacii byte数组转16进制字符数组、 16进制字符数组转16进制byte数组、 string与BCD互转等方法,包含多个转换方法, 足够满足日常解包组包需求

    java工具类去掉字符串String中的.点。android开发java程序员常用工具类

    java工具类去掉字符串String中的.点。android开发java程序员常用工具类。博文介绍:http://blog.csdn.net/qq_21376985/article/details/51482313

    一个byte数组与字符串转化类库

    1.转换一个String字符串为byte数组 2.将字节数组转化为String类型的数据 3.转换一个int为byte数组 4.从字节数组中指定的位置读取一个Integer类型的数据 5.转换一个shor字符串为byte数组 6.从字节数组中指定的...

Global site tag (gtag.js) - Google Analytics