commons-lang3的几个方法

commons-lang3的几个方法(未完待更)

import org.apache.commons.lang3.StringUtils;
import org.junit.Test;

/**
 * @ClassName StringUtilAll
 * @Description TODO
 * @Author xuelo
 * @DATE 12/19/2018 11:04 AM
 * @Version JDK1.8
 */
public class StringUtilAll {
    /*
    leftPad(String str,int size,char padChar)char也可以替换成为String或者不写
    return static String
    填充字符串的方法
    str为要填充的字符串,size是填充过后的字符串长度,padChar是要填充的char
    如果char的位置是空,就填充whitespace
    null不可以被填充
    ""是可以填充的
    int部分如果小于str的长度或者是负数,输出的结果还是原来的str
    另rightPad方法与此类似
     */
    @Test
    public void test1(){
        String str = "window";
        System.out.println(StringUtils.leftPad(str,7));//" window"
        System.out.println(StringUtils.leftPad(str,8,'a'));//"aawindow"
        System.out.println(StringUtils.leftPad(null,2,"1"));//null
        System.out.println(StringUtils.leftPad("",3,"sy"));//"sys"
        System.out.println(StringUtils.leftPad(str,-2,"aa"));//"window
    }

    /*
    repeat:return static String
    repeat(char ch, int repeat)
    Returns padding using the specified delimiter repeated to a given length.
    用ch重复填充到指定长度
    repeat(String str, int repeat)
    Repeat a String repeat times to form a new String.
    与上类似
    repeat(String str, String separator, int repeat)
    Repeat a String repeat times to form a new String, with a String separator injected each time.
    重复str repeat次,并且每次重复中间加separator的内容
    repeat<=0时输出结果为""(str不为null时)
    str为null时即使有separator返回值也为null
     */
    @Test
    public void test2(){
        System.out.println(StringUtils.repeat('a',3));//"aaa"
        System.out.println(StringUtils.repeat("ab",3));//"ababab"
        System.out.println(StringUtils.repeat("ab",",",3));//"ab,ab,ab"
        System.out.println(StringUtils.repeat("ab",-2));//""
        System.out.println(StringUtils.repeat(null,"l",3));//null
    }
    /*
    return static String
    str为null时返回null
    abbreviate(String str, int maxWidth)
    Abbreviates a String using ellipses.
    用省略号简写一个字符串,maxWidth为最大的字符串长度,包括省略号的三个点的长度
    maxWidth<=3会报错IllegalArgumentException
    abbreviate(String str, int offset, int maxWidth)
    Abbreviates a String using ellipses.
    offset>5=时左边才会出现省略号,即左边缘为5时才出现左边省略号
    直到右边省略号只能省略三个长度时右边省略号消失(包括三个)
    此时再增加offset结果不会变(offset超过str长度也不会变)
    abbreviate(String str, String abbrevMarker, int maxWidth)
    Abbreviates a String using another given String as replacement marker.
    abbreviate(String str, String abbrevMarker, int offset, int maxWidth)
    Abbreviates a String using a given replacement marker.
     */
    @Test
    public void test3(){//第一种比较好理解没有实例,第二种方法直接引用官方文档
       	StringUtils.abbreviate(null, *, *) = null
 		StringUtils.abbreviate("", 0, 4) = ""
 		StringUtils.abbreviate("abcdefghijklmno", -1, 10) = "abcdefg..."
 		StringUtils.abbreviate("abcdefghijklmno", 0, 10)  = "abcdefg..."
 		StringUtils.abbreviate("abcdefghijklmno", 1, 10)  = "abcdefg..."
 		StringUtils.abbreviate("abcdefghijklmno", 4, 10)  = "abcdefg..."
 		StringUtils.abbreviate("abcdefghijklmno", 5, 10)  = "...fghi..."
 		StringUtils.abbreviate("abcdefghijklmno", 6, 10)  = "...ghij..."
 		StringUtils.abbreviate("abcdefghijklmno", 8, 10)  = "...ijklmno"
 		StringUtils.abbreviate("abcdefghijklmno", 10, 10) = "...ijklmno"
 		StringUtils.abbreviate("abcdefghijklmno", 12, 10) = "...ijklmno"
 		StringUtils.abbreviate("abcdefghij", 0, 3) = IllegalArgumentException
 		StringUtils.abbreviate("abcdefghij", 5, 6) = IllegalArgumentException
    }
}

你可能感兴趣的:(commons-lang3的几个方法)