FastCat 1.6 build: 9470 released: 2011-11-19 Streamlined Replacement for StringBuilder. Copyright: (c) 2012 Canadian Mind Products. Java class library. Download from: http://mindprod.com/products1.html#FASTCAT ===> Free <=== Full source included. You may even include the source code, modified or unmodified in free/commercial open source/proprietary programs that you write and distribute. May be used freely for any purpose but military. For more details on this restriction, see http://mindprod.com/contact/nonmil.html If you include any Canadian Mind Products code in your own applications, your app too must be labeled non-military use only. All Java jars and source code are included. ---- Prerequisites: This program runs under any OS, (e.g. Win2K/XP/Vista/W7x86/W7-64/OSX/Linux/Solaris/AIX...) so long as you have <><> Java version 1.5 <><> or later installed (32-bit or 64-bit Java). See http://mindprod.com/jgloss/installingjava.html for details. ---- Installing on a PC: Download source and compiled class files to run on your own machine as a part of your own program. First install a recent Java JDK or JVM. See http://mindprod.com/jgloss/installingjava.html. To install, extract the zip download with WinZip (or similar unzip utility) into any directory you please, often J:\ -- ticking off the "use folder names" option. ---- Installing on a MacIntosh: Use Safari to download source and compiled class files to run on your own machine as a part of your own program. Safari will automatically unpack the zip into ~/Downloads (version 10.5) [or on the Desktop (version 10.4 and earlier)]. First install a recent Java JDK or JVM. See http://mindprod.com/jgloss/installingjava.html. You may optionally move the download tree to a permanent home. I don't have a MacIntosh, just a PC, so I can't test my Java programs for Mac compatibility. In theory they should work without problems, but in practice that does not always happen. If you have problems please, let me know, preferably with screenshots and complete verbatim error messages. ---- Rebuilding: You are pretty much on your own how to use this material. ---- Use: FastCat is a streamlined version of StringBuilder that does not allocate a buffer until the very last minute, and allocates it the exact size needed. You use it in writing your own Java Programs. It works very similarly to StringBuilder, so the Javadoc should be all you need. FastCat is null-safe. If you pass a null to one of the *.append methods it does nothing. This means you can streamline your application code. You don't have to explicitly avoid nulls, an error that can slip through testing since it may occur only rarely. It does not work well if you append one character at a time to your StringBuilder. It works very quickly with minimal RAM usage if you can accurately predict roughly how many chunks you will append but have only a vague idea of the final total size. ---- Version History: 1.0 2009-09-29 initial release 1.1 2009-10-09 return this from append 1.2 2010-01-25 fix bug in rarely used clear method. 1.3 2010-02-13 convert from JDK 1.6 to JDK 1.5 1.4 2011-06-08 add room, size, used methods 1.5 2011-11-13 append methods now ignore null parameters 1.6 2011-11-19 checkEstimate method to get advance warning an estimate is too tight or too generous. -30-