zoukankan      html  css  js  c++  java
  • 工具类:将数组指定范围的元素按指定格式(含前后缀、分隔符等)连接成字符串

       

    public class StringUtil
    {
        private static String checkNull(String str)
        {
            if (str == null)
            {
                return "";
            }
            return str;
        }
        
        private static String checkToString(Object obj)
        {
            if (obj == null)
            {
                return "null";
            }
            return obj.toString();
        }
        
        /* 
         * 将数组指定范围的元素按指定格式连接成字符串
         * @param src  源数组
         * @param prePrompt  前置提示字符串,一般为空 "",常用的有 "xxx:" 
         * @param prefix 前缀字符串,一般为"["
         * @param suffix 后 缀字符串,一般为"]"
         * @param separator  数组元素分隔符,一般设为用分号","
         * @param start   要参与连接的数组首元素下标
         * @param len   要参与连接数组元素的长度
         * @return    数组元素连接成的字符串
         */
        private static  String  concatElementsToString(Object[] src, String prePrompt, String prefix, String suffix,
            String separator, int start, int len)
        {
            if (src == null)
            {
                return "";
            }
            if (src.length == 0)
            {
                return "";
            }
            if (len <= 0 )
            {
                return "";
            }
            if(len>src.length-start){
                len=src.length-start;
            }
            
            prePrompt = checkNull(prePrompt);
            prefix = checkNull(prefix);
            suffix = checkNull(suffix);
            separator = checkNull(separator);
            
            StringBuilder strBuilder = new StringBuilder();
            strBuilder.append(prePrompt);
            strBuilder.append(prefix);
            for (int i = start; i < start + len; i++)
            {
                strBuilder.append(checkToString(src[i]));
                strBuilder.append(separator);
            }
            int oldStringBuilderLength = strBuilder.length();
            StringBuilder resultStrBuilder = new StringBuilder(
                strBuilder.toString().substring(0, oldStringBuilderLength - separator.length()));
            resultStrBuilder.append(suffix);
            return resultStrBuilder.toString();
        }
        
        
        
      
        /** 
         * 将数组的所有元素按指定格式连接成字符串
         * @param src     数组源 
         * @param prefix 前缀字符串,一般为"["
         * @param suffix  后 缀字符串,一般为"]"
         * @param separator 数组元素分隔符,一般设为用分号","
         * @return  数组元素连接成的字符串
         */
        public static String concatElementsToString(Object[] src, String prefix, String suffix, String separator)
        {
            
            return concatElementsToString(src, null, prefix, suffix, separator, 0, src.length);
            
        }
     
        /** 
         * 将数组指定范围的元素按指定格式连接成字符串
         * @param src    源数组 
         * @param prefix   前缀字符串,一般为"["
         * @param suffix   后 缀字符串,一般为"]"
         * @param separator  数组元素分隔符,一般设为用分号","
         * @param start    要参与连接的数组首元素下标
         * @param len    要参与连接数组元素的长度
         * @return 数组元素连接成的字符串
         */
        public static String concatElementsToString(Object[] src, String prefix, String suffix, String separator,int start,int len){
            return concatElementsToString(src, null, prefix, suffix, separator, start, len);
        }
        
        /** 
         * 将数组下标大于等于start的各元素按指定格式连接成字符串
         * @param src 源数组 
         * @param prefix  前缀字符串,一般为"["
         * @param suffix    后缀字符串,一般为"]"
         * @param separator  数组元素分隔符,一般设为用分号","
         * @param start    要参与连接的数组首元素下标
         * @return   数组元素连接成的字符串
         */
        public static String concatElementsToString(Object[] src, String prefix, String suffix, String separator,int start){
            return concatElementsToString(src, null, prefix, suffix, separator, start,src.length-start);
        }
        public static void main(String[] args)
        {
            String a=concatElementsToString(Constants.ISSUE_CODES,"[" ,"]", "
    ",1,3);
            
            String b=concatElementsToString(Constants.ISSUE_CODES,"[" ,"]", "||",9);
            String c=concatElementsToString(Constants.ISSUE_CODES,"[" ,"]", ",");
            System.out.println(a);
            System.out.println(b);
            
            System.out.println(c);
        }
    }

     控制台输出

  • 相关阅读:
    优达学城数据分析师纳米学位——知识点总结1
    优达学城数据分析师纳米学位——第二课 jupyter notebook的使用
    优达学城数据分析师纳米学位——第一课总结
    产品经理学习笔记- 猿题库运营面试准备
    EXCEL 2010学习笔记—— 动态图表
    EXCEL 2010学习笔记 —— VLOOKUP函数 嵌套 MATCH 函数
    最长上升子序列模板
    不要62
    划分树简单介绍
    母函数基本应用
  • 原文地址:https://www.cnblogs.com/gocode/p/concat-elements-with-format-in-array.html
Copyright © 2011-2022 走看看