Changeset 11435 in josm for trunk/src/org/openstreetmap/josm/tools/Utils.java
- Timestamp:
- 2017-01-07T00:56:52+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/tools/Utils.java
r11394 r11435 735 735 736 736 /** 737 * Determines if the given String would be empty if stripped. 738 * This is an efficient alternative to {@code strip(s).isEmpty()} that avoids to create useless String object. 739 * @param str The string to test 740 * @return {@code true} if the stripped version of {@code s} would be empty. 741 * @since 11435 742 */ 743 public static boolean isStripEmpty(String str) { 744 if (str != null) { 745 for (int i = 0; i < str.length(); i++) { 746 if (!isStrippedChar(str.charAt(i), DEFAULT_STRIP)) { 747 return false; 748 } 749 } 750 } 751 return true; 752 } 753 754 /** 737 755 * An alternative to {@link String#trim()} to effectively remove all leading 738 756 * and trailing white characters, including Unicode ones. … … 774 792 boolean leadingSkipChar = true; 775 793 while (leadingSkipChar && start < end) { 776 char c = str.charAt(start); 777 leadingSkipChar = Character.isWhitespace(c) || Character.isSpaceChar(c) || stripChar(skipChars, c); 794 leadingSkipChar = isStrippedChar(str.charAt(start), skipChars); 778 795 if (leadingSkipChar) { 779 796 start++; … … 782 799 boolean trailingSkipChar = true; 783 800 while (trailingSkipChar && end > start + 1) { 784 char c = str.charAt(end - 1); 785 trailingSkipChar = Character.isWhitespace(c) || Character.isSpaceChar(c) || stripChar(skipChars, c); 801 trailingSkipChar = isStrippedChar(str.charAt(end - 1), skipChars); 786 802 if (trailingSkipChar) { 787 803 end--; … … 790 806 791 807 return str.substring(start, end); 808 } 809 810 private static boolean isStrippedChar(char c, final char ... skipChars) { 811 return Character.isWhitespace(c) || Character.isSpaceChar(c) || stripChar(skipChars, c); 792 812 } 793 813
Note:
See TracChangeset
for help on using the changeset viewer.