You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by sc...@apache.org on 2005/09/10 12:07:46 UTC
svn commit: r279985 - in /jakarta/commons/proper/lang/trunk: project.xml
src/java/org/apache/commons/lang/RandomStringUtils.java
Author: scolebourne
Date: Sat Sep 10 03:07:41 2005
New Revision: 279985
URL: http://svn.apache.org/viewcvs?rev=279985&view=rev
Log:
Optimize performance of RandomStringUtils
bug 35170, from Shaun Kalley
Modified:
jakarta/commons/proper/lang/trunk/project.xml
jakarta/commons/proper/lang/trunk/src/java/org/apache/commons/lang/RandomStringUtils.java
Modified: jakarta/commons/proper/lang/trunk/project.xml
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/lang/trunk/project.xml?rev=279985&r1=279984&r2=279985&view=diff
==============================================================================
--- jakarta/commons/proper/lang/trunk/project.xml (original)
+++ jakarta/commons/proper/lang/trunk/project.xml Sat Sep 10 03:07:41 2005
@@ -233,6 +233,9 @@
<name>Marc Johnson</name>
</contributor>
<contributor>
+ <name>Shaun Kalley</name>
+ </contributor>
+ <contributor>
<name>Tetsuya Kaneuchi</name>
</contributor>
<contributor>
Modified: jakarta/commons/proper/lang/trunk/src/java/org/apache/commons/lang/RandomStringUtils.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/lang/trunk/src/java/org/apache/commons/lang/RandomStringUtils.java?rev=279985&r1=279984&r2=279985&view=diff
==============================================================================
--- jakarta/commons/proper/lang/trunk/src/java/org/apache/commons/lang/RandomStringUtils.java (original)
+++ jakarta/commons/proper/lang/trunk/src/java/org/apache/commons/lang/RandomStringUtils.java Sat Sep 10 03:07:41 2005
@@ -231,7 +231,7 @@
}
}
- StringBuffer buffer = new StringBuffer();
+ char[] buffer = new char[count];
int gap = end - start;
while (count-- != 0) {
@@ -241,16 +241,15 @@
} else {
ch = chars[random.nextInt(gap) + start];
}
- if ((letters && numbers && Character.isLetterOrDigit(ch))
- || (letters && Character.isLetter(ch))
+ if ((letters && Character.isLetter(ch))
|| (numbers && Character.isDigit(ch))
|| (!letters && !numbers)) {
- buffer.append(ch);
+ buffer[count] = ch;
} else {
count++;
}
}
- return buffer.toString();
+ return new String(buffer);
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org