From f32e2ffc83778de443f1242d7e85108a007191d5 Mon Sep 17 00:00:00 2001 From: jochenberger Date: Thu, 23 Mar 2017 10:09:13 +0100 Subject: [PATCH] Avoid costly call to String#trim() --- .../java/net/minidev/json/parser/JSONParserString.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/json-smart/src/main/java/net/minidev/json/parser/JSONParserString.java b/json-smart/src/main/java/net/minidev/json/parser/JSONParserString.java index eef4da22..b16f3365 100644 --- a/json-smart/src/main/java/net/minidev/json/parser/JSONParserString.java +++ b/json-smart/src/main/java/net/minidev/json/parser/JSONParserString.java @@ -63,8 +63,13 @@ protected void extractString(int beginIndex, int endIndex) { } protected void extractStringTrim(int start, int stop) { + while (start < stop-1 && Character.isWhitespace(in.charAt(start))) { + start++; + } + while (stop-1 > start && Character.isWhitespace(in.charAt(stop-1))) { + stop--; + } extractString(start, stop); - xs = xs.trim(); } protected int indexOf(char c, int pos) {