CommonUtil.java 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package com.imed.costaccount.common.util;
  2. /**
  3. * 通用工具类
  4. */
  5. public class CommonUtil {
  6. /**
  7. * 校验字符串中括号是否闭合'[']'('')''{''}'
  8. *
  9. * @param str
  10. * @return
  11. */
  12. public static boolean whetherStringClose(String str) {
  13. int parenthesesNums = 0;//小括号数量
  14. int bracketsNums = 0;//中括号数量
  15. int bracesNums = 0;//大括号数量
  16. for (int i = 0; i < str.length(); i++) {
  17. char c = str.charAt(i);
  18. if (c == '{') {
  19. bracesNums += 1;
  20. }
  21. if (c == '[') {
  22. bracketsNums += 1;
  23. }
  24. if (c == '(') {
  25. parenthesesNums += 1;
  26. }
  27. if (c == '}') {
  28. bracesNums -= 1;
  29. }
  30. if (c == ']') {
  31. bracketsNums -= 1;
  32. }
  33. if (c == ')') {
  34. parenthesesNums -= 1;
  35. }
  36. if (parenthesesNums < 0 || bracesNums < 0 || bracketsNums < 0) {
  37. break;
  38. }
  39. }
  40. if (parenthesesNums != 0 || bracesNums != 0 || bracketsNums != 0) {
  41. return false;
  42. } else {
  43. return true;
  44. }
  45. }
  46. }