dlr 01/05/30 09:08:03
Modified: src/java/org/apache/turbine/util StringStackBuffer.java
Log:
Improved JavaDoc of toString() and toString(String separator) instance
methods, and refactored the second to remove early return.
Revision Changes Path
1.11 +33 -17
jakarta-turbine/src/java/org/apache/turbine/util/StringStackBuffer.java
Index: StringStackBuffer.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine/src/java/org/apache/turbine/util/StringStackBuffer.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- StringStackBuffer.java 2001/05/05 03:19:19 1.10
+++ StringStackBuffer.java 2001/05/30 16:07:59 1.11
@@ -61,7 +61,7 @@
* This class implements a Stack for String objects.
*
* @author <a href="mailto:[EMAIL PROTECTED]">John D. McNally</a>
- * @version $Id: StringStackBuffer.java,v 1.10 2001/05/05 03:19:19 jvanzyl Exp $
+ * @version $Id: StringStackBuffer.java,v 1.11 2001/05/30 16:07:59 dlr Exp $
*/
public class StringStackBuffer
{
@@ -156,9 +156,10 @@
}
/**
- * Converts the Stack to a single String with no separator.
+ * Converts the stack to a single {@link java.lang.String} with no
+ * separator.
*
- * @return A String.
+ * @return The stack elements as a single block of text.
*/
public String toString()
{
@@ -166,28 +167,43 @@
}
/**
- * Converts the Stack to a single String with a separator.
+ * Converts the stack to a single {@link java.lang.String}.
*
- * @param separator A String.
- * @return A String.
+ * @param separator The text to use as glue between elements in
+ * the stack.
+ * @return The stack elements--glued together by
+ * <code>separator</code>--as a single block of text.
*/
public String toString( String separator )
{
- if ( size() == 0 ) return "";
- if ( separator == null ) separator = "";
-
- int totalSize = 0;
- for (int i=0; i<stk.size(); i++)
+ String s;
+ if ( size() > 0 )
{
- totalSize += get(i).length();
+ if ( separator == null )
+ {
+ separator = "";
+ }
+
+ // Determine what size to pre-allocate for the buffer.
+ int totalSize = 0;
+ for (int i = 0; i < stk.size(); i++)
+ {
+ totalSize += get(i).length();
+ }
+ totalSize += (stk.size() - 1) * separator.length();
+
+ StringBuffer sb = new StringBuffer(totalSize).append( get(0) );
+ for (int i = 1; i < stk.size(); i++)
+ {
+ sb.append(separator).append(get(i));
+ }
+ s = sb.toString();
}
- totalSize += (stk.size()-1)*separator.length();
- StringBuffer sb = new StringBuffer(totalSize).append( get(0) );
- for (int i=1; i<stk.size(); i++)
+ else
{
- sb.append(separator).append(get(i));
+ s = "";
}
- return sb.toString();
+ return s;
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]