The Java documentation doesn’t seem to mention anything about deprecation for StringTokenizer, yet I keep hearing about how it was deprecated long ago. Was it deprecated because it had bugs/errors, or is String.split() simply better to use overall?
I have some code that uses StringTokenizer and I am wondering if I should seriously be concerned about refactoring it to use String.split(), or whether the deprecation is purely a matter of convenience and my code is safe.
From the javadoc for StringTokenizer:
If you look at
String.split()and compare it toStringTokenizer, the relevant difference is thatString.split()uses a regular expression, whereasStringTokenizerjust uses verbatim split characters. So if I wanted to tokenize a string with more complex logic than single characters (e.g. split on\r\n), I can’t useStringTokenizerbut I can useString.split().