记录几个常用的工具类的常用方法

骑猪看日落 2022-04-23 14:24 349阅读 0赞

#

介绍的工具包如下:

  1. java.util.Objects
  2. org.apache.commons.lang.StringUtils
  3. java.util.Collections
  4. org.springframework.util.CollectionUtils

java.util.Objects

JDK 7后出现,提供静态方法操作对象。

  1. public static boolean isNull(Object obj) {
  2. return obj == null;
  3. }
  4. public static boolean nonNull(Object obj) {
  5. return obj != null;
  6. }

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNTQxNjE5_size_16_color_FFFFFF_t_70

#

org.apache.commons.lang.StringUtils

  1. 1.判断是否为一个数字
  2. public static boolean isNumeric(String str) {
  3. if (str == null) {
  4. return false;
  5. } else {
  6. int sz = str.length();
  7. for(int i = 0; i < sz; ++i) {
  8. if (!Character.isDigit(str.charAt(i))) {
  9. return false;
  10. }
  11. }
  12. return true;
  13. }
  14. }
  15. 2.判断字符串是否由字母组成
  16. public static boolean isAlpha(String str) {
  17. if (str == null) {
  18. return false;
  19. } else {
  20. int sz = str.length();
  21. for(int i = 0; i < sz; ++i) {
  22. if (!Character.isLetter(str.charAt(i))) {
  23. return false;
  24. }
  25. }
  26. return true;
  27. }
  28. }
  29. 3.剥离字符串,否则去掉字符串两边一样的字符,到不一样为止
  30. public static String strip(String str, String stripChars) {
  31. if (isEmpty(str)) {
  32. return str;
  33. } else {
  34. str = stripStart(str, stripChars);
  35. return stripEnd(str, stripChars);
  36. }
  37. }
  38. 使用strip去除list集合两端的[]
  39. StringUtils.strip(appIdList.toString(),"[]")
  40. 4.join,将集合以指定字符分割
  41. public static String join(Iterator iterator, String separator) {
  42. if (iterator == null) {
  43. return null;
  44. } else if (!iterator.hasNext()) {
  45. return "";
  46. } else {
  47. Object first = iterator.next();
  48. if (!iterator.hasNext()) {
  49. return ObjectUtils.toString(first);
  50. } else {
  51. StringBuffer buf = new StringBuffer(256);
  52. if (first != null) {
  53. buf.append(first);
  54. }
  55. while(iterator.hasNext()) {
  56. if (separator != null) {
  57. buf.append(separator);
  58. }
  59. Object obj = iterator.next();
  60. if (obj != null) {
  61. buf.append(obj);
  62. }
  63. }
  64. return buf.toString();
  65. }
  66. }
  67. }
  68. 案例:
  69. StringUtils.join(userIdList, ",")
  70. 5.字符串判空,可以识别空字符串
  71. public static boolean isBlank(String str) {
  72. int strLen;
  73. if (str != null && (strLen = str.length()) != 0) {
  74. for(int i = 0; i < strLen; ++i) {
  75. if (!Character.isWhitespace(str.charAt(i))) {
  76. return false;
  77. }
  78. }
  79. return true;
  80. } else {
  81. return true;
  82. }
  83. }
  84. 6.字符串判空,不能识别空字符串
  85. public static boolean isEmpty(String str) {
  86. return str == null || str.length() == 0;
  87. }
  88. 7.字符串截取获取前半部分
  89. public static String substringBefore(String str, String separator) {
  90. if (!isEmpty(str) && separator != null) {
  91. if (separator.isEmpty()) {
  92. return "";
  93. } else {
  94. int pos = str.indexOf(separator);
  95. return pos == -1 ? str : str.substring(0, pos);
  96. }
  97. } else {
  98. return str;
  99. }
  100. }

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNTQxNjE5_size_16_color_FFFFFF_t_70 1

java.util.Collections

  1. 用于操作SetListMap等集合,提供了大量方法对集合进行排序、查询和修改等操作,还提供了将集合对象置为不可变、对集合对象实现同步控制等方法。
  2. 这个类不需要创建对象,内部提供的都是静态方法。
  3. 1.返回一个空的列表,不可变,开发中尽量避免返回null,还可以返回空mapset
  4. public static final <T> List<T> emptyList() {
  5. return (List<T>) EMPTY_LIST;
  6. }
  7. 2.不可变,任何对它的更改,都会导致UnsupportedOperationException,因此,此list的容量始终为1
  8. public static <T> List<T> singletonList(T o) {
  9. return new SingletonList<>(o);
  10. }
  11. 3.返回指定映射的不可修改视图
  12. 试图修改返回的映射(不管是直接修改还是通过其 collection 视图进行修改)将导致抛出 UnsupportedOperationException。如果指定映射是可序列化的,则返回的映射也将是可序列化的。
  13. private final Map<? extends K, ? extends V> m;
  14. UnmodifiableMap(Map<? extends K, ? extends V> m) {
  15. if (m==null)
  16. throw new NullPointerException();
  17. this.m = m;
  18. }

org.springframework.util.CollectionUtils

提供集合、Map、数组间的转换以及包含关系(交集、并集、差集)等操作。

  1. 1. 判断集合是否为空
  2. public static boolean isEmpty(@Nullable Collection<?> collection) {
  3. return collection == null || collection.isEmpty();
  4. }
  5. 2. 判断map是否为空
  6. public static boolean isEmpty(@Nullable Map<?, ?> map) {
  7. return map == null || map.isEmpty();
  8. }

还提供了ListUtils、SetUtils、MapUtil工具包。

发表评论

表情:
评论列表 (有 0 条评论,349人围观)

还没有评论,来说两句吧...

相关阅读

    相关 数组常用方法

    这里新创建了一个专题,为自己之后的跳槽做准备,每天给自己一个小时的时间去看网上的一些面试题,并且将这些面试题的答案加上自己思考以及动手时间的内容整理成笔记,记录下来。 尤其