ChangeUtil: Minor optimization to findChanges for change numbers

Don't bother with a regex, just use Ints.tryParse. Maintain existing
behavior of skipping this codepath for numbers like 01234.

Change-Id: I95cfdcd6171470e123c4e7046744072ea31a1399
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/ChangeUtil.java b/gerrit-server/src/main/java/com/google/gerrit/server/ChangeUtil.java
index b8f5dac..dcf1fa7 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/ChangeUtil.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/ChangeUtil.java
@@ -19,6 +19,7 @@
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Ordering;
+import com.google.common.primitives.Ints;
 import com.google.gerrit.common.TimeUtil;
 import com.google.gerrit.extensions.restapi.ResourceConflictException;
 import com.google.gerrit.extensions.restapi.RestApiException;
@@ -439,10 +440,13 @@
   public List<ChangeControl> findChanges(String id, CurrentUser user)
       throws OrmException {
     // Try legacy id
-    if (id.matches("^[1-9][0-9]*$")) {
+    if (!id.isEmpty() && id.charAt(0) != '0') {
+      Integer n = Ints.tryParse(id);
       try {
-        return ImmutableList.of(
-            changeControlFactory.controlFor(Change.Id.parse(id), user));
+        if (n != null) {
+          return ImmutableList.of(
+              changeControlFactory.controlFor(new Change.Id(n), user));
+        }
       } catch (NoSuchChangeException e) {
         return Collections.emptyList();
       }