Java 常用方法:
(1)去掉所有的回车换行
- /**
- * delete CRLF; delete empty line ;delete blank lines
- *
- * @param input
- * @return
- */
- public static String deleteCRLF(String input) {
- input = SystemHWUtil.deleteCRLFOnce(input);
- return SystemHWUtil.deleteCRLFOnce(input);
- }
- /***
- * delete CRLF; delete empty line ;delete blank lines
- *
- * @param input
- * @return
- */
- private static String deleteCRLFOnce(String input) {
- if (ValueWidget.isHasValue(input)) {
- return input.replaceAll("((\r\n)|\n)[\\s\t ]*(\\1)+", "$1")
- .replaceAll("^((\r\n)|\n)", "");
- } else {
- return null;
- }
- }
使用时直接调用deleteCRLF方法即可
(2)去掉所有的空格
- /***
- * Delete all spaces
- *
- * @param input
- * @return
- */
- public static String deleteAllCRLF(String input) {
- return input.replaceAll("((\r\n)|\n)[\\s\t ]*", "").replaceAll(
- "^((\r\n)|\n)", "");
- }
(3)去掉String[]中重复的元素,去重
- /***
- * test ok!<br> 去重
- * @param strs
- * @return
- */
- public static String[] guolv(String[]strs){
- List<String>list =new ArrayList<String>();
- list.add(strs[0]);//数组的第一个元素
- for(int i=1;i<strs.length;i++){
- String string=strs[i];
- if(!isContains(list, string)){
- list.add(string);
- }
- }
- return list2Arr(list);
- }
- /***
- * 判断list中是否包含keyWord
- *
- * @param list
- * @param keyWord
- * @return
- */
- public static boolean isContains(List<String> list, String keyWord) {
- if (ValueWidget.isNullOrEmpty(list)) {
- return false;
- }
- return list.contains(keyWord);
- }
- /***
- * convert List to String[]
- * @param list
- * @return
- */
- public static String[] list2Arr(List list){
- int size=list.size();
- String[]strs=new String[size];
- for(int i=0;i<size;i++){
- strs[i]=(String)list.get(i);
- }
- return strs;
- }
(4)把List 转化为String[]
- /***
- * convert List to String[]
- * @param list
- * @return
- */
- public static String[] list2Arr(List list){
- int size=list.size();
- String[]strs=new String[size];
- for(int i=0;i<size;i++){
- strs[i]=(String)list.get(i);
- }
- return strs;
- }
(5)获取目录中的文件名
- /***
- * 获取文件名称。例如"aa/bb我们#.txt"-->“bb我们#.txt”
- *
- * @param filepath
- * @return
- */
- public static String getFileNameOnly(String filepath) {
- String result = filepath.replaceAll(".*\\b[/\\\\]([\\w\\.]+)", "$1");
- return result;
- }
注意:目录的类型是字符串
(6)过滤掉List中相同的元素
- /***
- * 过滤掉其中相同的元素,test ok
- *
- * @param list
- * @param propertyName
- * @param propertyValue
- * @return
- * @throws SecurityException
- * @throws IllegalArgumentException
- * @throws NoSuchFieldException
- * @throws IllegalAccessException
- */
- public static List<?> uniqueObject(List<?> list, String propertyName)
- throws SecurityException, IllegalArgumentException,
- NoSuchFieldException, IllegalAccessException {
- if (ValueWidget.isNullOrEmpty(list)) {
- return list;
- }
- List resultList = new ArrayList();
- resultList.add(list.get(0));
- for (int i = 1; i < list.size(); i++) {
- Object obj = list.get(i);
- if (!isContainObject(resultList, propertyName,
- (String) ReflectHWUtils.getObjectValue(obj, propertyName))) {
- resultList.add(obj);
- }
- }
- return resultList;
- }
- /***
- * 判断 list 中是否已经存在该对象
- *
- * @param list
- * @param propertyName
- * @param propertyValue
- * @return
- * @throws SecurityException
- * @throws IllegalArgumentException
- * @throws NoSuchFieldException
- * @throws IllegalAccessException
- */
- public static boolean isContainObject(List list, String propertyName,
- String propertyValue) throws SecurityException,
- IllegalArgumentException, NoSuchFieldException,
- IllegalAccessException {
- if (ValueWidget.isNullOrEmpty(list)) {
- return false;
- }
- for (int i = 0; i < list.size(); i++) {
- Object obj = list.get(i);
- String propertyValue2 = (String) ReflectHWUtils.getObjectValue(obj,
- propertyName);
- if (propertyValue.equals(propertyValue2)) {
- return true;
- }
- }
- return false;
- }
- /***
- * 获取指定对象的属性值
- *
- * @param obj
- * @param propertyName
- * @return
- * @throws SecurityException
- * @throws NoSuchFieldException
- * @throws IllegalArgumentException
- * @throws IllegalAccessException
- */
- public static Object getObjectValue(Object obj, String propertyName)
- throws SecurityException, NoSuchFieldException,
- IllegalArgumentException, IllegalAccessException {
- if (StringUtils.isEmpty(propertyName)) {
- return null;
- }
- Class<?> clazz = obj.getClass();
- Field name = getSpecifiedField(clazz, propertyName);
- if (ValueWidget.isNullOrEmpty(name)) {
- propertyName=ValueWidget.title(propertyName);//convert "Key2" to "key2"
- name = getSpecifiedField(clazz, propertyName);
- if (ValueWidget.isNullOrEmpty(name)) {
- System.out.println("[ReflectHWUtils.getObjectValue]"
- + obj.getClass().getName() + " does not has field "
- + propertyName);
- return null;
- }
- }
- return getObjectValue(obj, name);
- }
注意:List中的元素不是基本类型