Java基本,字符串处理
2014-04-25 22:37
357 查看
package com.huaxin.test.spring; import java.util.ArrayList; import java.util.List; import org.apache.commons.lang.StringUtils; public class TestConvert { public static void main(String[] args) { // 10:all;10.103 String[] paramArray = new String[]{"100:all", "10.103", "10.104", "30.103", "30.106"}; List<String> paramValues = new ArrayList<String>(); for(String param : paramArray) { paramValues.add(param); } System.out.println(convert(paramValues)); String param = "10:all;10.103|104;30.103|106"; System.out.println(convert(param)); } private static List<String> convert(String paramValue) { List<String> paramValues = new ArrayList<String>(); //10:all 10.103|104 30.103|106 String[] semicolonArray = StringUtils.split(paramValue, ";"); for(int i = 0; i < semicolonArray.length; i++) { // 10.103|104 30.103|106 int doc = semicolonArray[i].indexOf("."); if(doc != -1) { // 10.103 104 String[] verticalArray = StringUtils.split(semicolonArray[i], "|"); String beforeVertical = ""; for(int j = 0; j < verticalArray.length; j++) { String type = ""; int verticalDoc = verticalArray[j].indexOf("."); if(verticalDoc != -1) { // 10.103 beforeVertical = verticalArray[j].substring(0, doc); type = verticalArray[j].substring(doc + 1); } else { // 104 type = verticalArray[j]; } paramValues.add(beforeVertical + "." + type); } } else { // 10:all; paramValues.add(semicolonArray[i]); } } return paramValues; } private static String convert(List<String> paramValues) { StringBuffer result = new StringBuffer(paramValues.size() * 16); String type = ""; // "100:all", "10.103", "10.104", "30.103", "30.106" for(int i = 0; i < paramValues.size(); i++) { String paramValue = paramValues.get(i); int doc = paramValue.indexOf("."); // "10.103" "10.104" if(doc != -1) { // 10 String substring = paramValue.substring(0, doc); if(!type.equals(substring)) { if(result.length() > 0) { result.append(";"); } // 103 result.append(paramValue); } else { // 104 result.append("|").append(paramValue.substring(doc + 1)); } type = substring; } else { // "100:all" result.append(paramValue); } } return result.toString(); } }
相关文章推荐
- java基本字符串处理
- java字符串处理类----以后会继续添加方法到里面
- string类的基本使用,编写一个字符串处理程序
- TopCoder SRMS 1 字符串处理问题 Java题解
- java 字符串转化为整数溢出问题处理
- Java字符串处理函数
- 【java】 JAVA字符串处理工具类
- Java程序员从笨鸟到菜鸟之(一)开发环境搭建,基本语法,字符串,数组
- js模仿java格式化字符串处理
- 【Objective-C】OC中字符串(NSString)的基本概念和常用处理方法
- Java字符串加密处理
- java字符串的一些特殊处理
- CoreJava学习1——字符串处理(String和StringBuilder)&正则式
- Java常用基本字符串函数
- java html字符串处理
- Java程序员从笨鸟到菜鸟之(一)开发环境搭建,基本语法,字符串,数组
- java中字符串编码的转换以及乱码后的处理总结
- javaweb开发中一些字符串的处理记录
- 【Java】字符串以某特殊字符分割处理
- Java基础——基本类型和包装类、基本类型和字符串之间的转换