java 常用方法

Java 常用方法:

(1)去掉所有的回车换行

Java代码  java 常用方法
  1. /** 
  2.      * delete CRLF; delete empty line ;delete blank lines 
  3.      *  
  4.      * @param input 
  5.      * @return 
  6.      */  
  7.     public static String deleteCRLF(String input) {  
  8.         input = SystemHWUtil.deleteCRLFOnce(input);  
  9.         return SystemHWUtil.deleteCRLFOnce(input);  
  10.     }  
  11. /*** 
  12.      * delete CRLF; delete empty line ;delete blank lines 
  13.      *  
  14.      * @param input 
  15.      * @return 
  16.      */  
  17.     private static String deleteCRLFOnce(String input) {  
  18.         if (ValueWidget.isHasValue(input)) {  
  19.             return input.replaceAll("((\r\n)|\n)[\\s\t ]*(\\1)+""$1")  
  20.                     .replaceAll("^((\r\n)|\n)""");  
  21.         } else {  
  22.             return null;  
  23.         }  
  24.     }  

 使用时直接调用deleteCRLF方法即可

(2)去掉所有的空格

Java代码  java 常用方法
  1. /*** 
  2.      * Delete all spaces 
  3.      *  
  4.      * @param input 
  5.      * @return 
  6.      */  
  7.     public static String deleteAllCRLF(String input) {  
  8.         return input.replaceAll("((\r\n)|\n)[\\s\t ]*""").replaceAll(  
  9.                 "^((\r\n)|\n)""");  
  10.     }  

 

(3)去掉String[]中重复的元素,去重

Java代码  java 常用方法
  1.     /*** 
  2.      * test ok!<br> 去重 
  3.      * @param strs 
  4.      * @return 
  5.      */  
  6.     public static String[] guolv(String[]strs){  
  7.         List<String>list =new ArrayList<String>();  
  8.         list.add(strs[0]);//数组的第一个元素  
  9.         for(int i=1;i<strs.length;i++){  
  10.             String  string=strs[i];  
  11.             if(!isContains(list, string)){  
  12.                 list.add(string);  
  13.             }  
  14.         }  
  15.         return list2Arr(list);  
  16.     }  
  17. /*** 
  18.      * 判断list中是否包含keyWord 
  19.      *  
  20.      * @param list 
  21.      * @param keyWord 
  22.      * @return 
  23.      */  
  24.     public static boolean isContains(List<String> list, String keyWord) {  
  25.         if (ValueWidget.isNullOrEmpty(list)) {  
  26.             return false;  
  27.         }  
  28.         return list.contains(keyWord);  
  29.     }  
  30. /*** 
  31.      * convert List to String[] 
  32.      * @param list 
  33.      * @return 
  34.      */  
  35.     public static String[] list2Arr(List list){  
  36.         int size=list.size();  
  37.         String[]strs=new String[size];  
  38.         for(int i=0;i<size;i++){  
  39.             strs[i]=(String)list.get(i);  
  40.         }  
  41.         return strs;      
  42.     }  

 

(4)把List 转化为String[]

Java代码  java 常用方法
  1. /*** 
  2.      * convert List to String[] 
  3.      * @param list 
  4.      * @return 
  5.      */  
  6.     public static String[] list2Arr(List list){  
  7.         int size=list.size();  
  8.         String[]strs=new String[size];  
  9.         for(int i=0;i<size;i++){  
  10.             strs[i]=(String)list.get(i);  
  11.         }  
  12.         return strs;      
  13.     }  

 (5)获取目录中的文件名

Java代码  java 常用方法
  1. /*** 
  2.      * 获取文件名称。例如"aa/bb我们#.txt"-->“bb我们#.txt” 
  3.      *  
  4.      * @param filepath 
  5.      * @return 
  6.      */  
  7.     public static String getFileNameOnly(String filepath) {  
  8.         String result = filepath.replaceAll(".*\\b[/\\\\]([\\w\\.]+)""$1");  
  9.         return result;  
  10.     }  

 注意:目录的类型是字符串

(6)过滤掉List中相同的元素

Java代码  java 常用方法
  1. /*** 
  2.      * 过滤掉其中相同的元素,test ok 
  3.      *  
  4.      * @param list 
  5.      * @param propertyName 
  6.      * @param propertyValue 
  7.      * @return 
  8.      * @throws SecurityException 
  9.      * @throws IllegalArgumentException 
  10.      * @throws NoSuchFieldException 
  11.      * @throws IllegalAccessException 
  12.      */  
  13.     public static List<?> uniqueObject(List<?> list, String propertyName)  
  14.             throws SecurityException, IllegalArgumentException,  
  15.             NoSuchFieldException, IllegalAccessException {  
  16.         if (ValueWidget.isNullOrEmpty(list)) {  
  17.             return list;  
  18.         }  
  19.         List resultList = new ArrayList();  
  20.         resultList.add(list.get(0));  
  21.         for (int i = 1; i < list.size(); i++) {  
  22.             Object obj = list.get(i);  
  23.             if (!isContainObject(resultList, propertyName,  
  24.                     (String) ReflectHWUtils.getObjectValue(obj, propertyName))) {  
  25.                 resultList.add(obj);  
  26.             }  
  27.         }  
  28.         return resultList;  
  29.     }  
  30.   
  31. /*** 
  32.      * 判断 list 中是否已经存在该对象 
  33.      *  
  34.      * @param list 
  35.      * @param propertyName 
  36.      * @param propertyValue 
  37.      * @return 
  38.      * @throws SecurityException 
  39.      * @throws IllegalArgumentException 
  40.      * @throws NoSuchFieldException 
  41.      * @throws IllegalAccessException 
  42.      */  
  43.     public static boolean isContainObject(List list, String propertyName,  
  44.             String propertyValue) throws SecurityException,  
  45.             IllegalArgumentException, NoSuchFieldException,  
  46.             IllegalAccessException {  
  47.         if (ValueWidget.isNullOrEmpty(list)) {  
  48.             return false;  
  49.         }  
  50.         for (int i = 0; i < list.size(); i++) {  
  51.             Object obj = list.get(i);  
  52.             String propertyValue2 = (String) ReflectHWUtils.getObjectValue(obj,  
  53.                     propertyName);  
  54.             if (propertyValue.equals(propertyValue2)) {  
  55.                 return true;  
  56.             }  
  57.         }  
  58.         return false;  
  59.     }  
  60. /*** 
  61.      * 获取指定对象的属性值 
  62.      *  
  63.      * @param obj 
  64.      * @param propertyName 
  65.      * @return 
  66.      * @throws SecurityException 
  67.      * @throws NoSuchFieldException 
  68.      * @throws IllegalArgumentException 
  69.      * @throws IllegalAccessException 
  70.      */  
  71.     public static Object getObjectValue(Object obj, String propertyName)  
  72.             throws SecurityException, NoSuchFieldException,  
  73.             IllegalArgumentException, IllegalAccessException {  
  74.         if (StringUtils.isEmpty(propertyName)) {  
  75.             return null;  
  76.         }  
  77.         Class<?> clazz = obj.getClass();  
  78.         Field name = getSpecifiedField(clazz, propertyName);  
  79.         if (ValueWidget.isNullOrEmpty(name)) {  
  80.             propertyName=ValueWidget.title(propertyName);//convert "Key2" to "key2"  
  81.             name = getSpecifiedField(clazz, propertyName);  
  82.               
  83.             if (ValueWidget.isNullOrEmpty(name)) {  
  84.                 System.out.println("[ReflectHWUtils.getObjectValue]"  
  85.                         + obj.getClass().getName() + " does not has field "  
  86.                         + propertyName);  
  87.             return null;  
  88.             }  
  89.         }  
  90.         return getObjectValue(obj, name);  
  91.     }  

 注意:List中的元素不是基本类型

上一篇:java中集合类中Collection接口中的Map接口的常用方法熟悉


下一篇:内部类访问局部变量为什么要用final修饰