首页 > 编程 > Java > 正文

java 字符串大小写操作

2019-11-08 01:48:42
字体:
来源:转载
供稿:网友

java在操作字符串的首字母变为大写,以及list根据list中对象的某字段(为String类型),去重,相关代码如下

import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.List;/** * <p>Description: 处理集合的工具类 </p> * <p>Copyright: Copyright (c) 2017 </p> * <p>Date: 2017年2月20日 </p> * <p>Company: Ausware </p> * @author chenc * @version V1.0  */public class CollectionUtil {    /**     * 对按fieldName分组的list进行fieldName的值重复的值设置非第一次为该值的对象该值为空字符串     * @param ts     * @param fieldName 字段名(该字段类型为String)     * @return     * @throws Exception     */    public static List<? extends Object> removeRepeatItemByField(List<? extends Object> ts, String fieldName) throws Exception{        if (ts == null ||ts.size() == 0) {            return ts;        }        Class<?> clazz = ts.get(0).getClass();        Field field = clazz.getDeclaredField(fieldName);        Method methodg = clazz.getDeclaredMethod("get" + captureName(fieldName));        Method methods = clazz.getDeclaredMethod("set" + captureName(fieldName), String.class);        if (field != null && methodg != null && methods != null) {            List<String> list = new ArrayList<String>();            for (int i = 0; i < ts.size(); i++) {                Object obj = ts.get(i);                String s = (String) methodg.invoke(obj);                if (list.contains(s)) {                    methods.invoke(obj, "");                }else {                    list.add(s);                }            }        }        return ts;    }        /**     * 字符串首字母大写     * @param name     * @return     */    public static String captureName(String name) {       char[] cs = name.toCharArray();       //cs[0]-=(cs[0]>96&&cs[0]<123)?32:0;       if (97 <= cs[0] && cs[0] <= 122) {      	   cs[0] -= 32;       }       return String.valueOf(cs);    }     }


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表