File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes My String won't trim Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Head First Android this week in the Android forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "My String won Watch "My String won New topic

My String won't trim

Elouise Kivineva
Ranch Hand

Joined: Feb 07, 2002
Posts: 154
I have a GUI with a JPassword field named pswrd.
When I read the entered password I save it in a String
named password and trim to get out leading and trailing
empty spaces (user pressed the space bar).

but when I print the password (using a JOptionPane)

to check that the empty spaces are gone, they never are.
Why, and what can I do about it?
Joe Pluta
Ranch Hand

Joined: Jun 23, 2003
Posts: 1376
This is a standard mistake when working with Strings. Strings are immutable, meaning they do not change. The syntax "password.trim();" does nothing to the original String, it simply returns a NEW String with the spaces trimmed off. The following modification will work:
password = password.trim();
Hope this helps.
Ransika deSilva
Ranch Hand

Joined: Feb 18, 2003
Posts: 524
Hope this too clarify the answer, according to the API specification of the String class,
Returns a copy of the string, with leading and trailing whitespace omitted.
Important thing to note here is that, it returns a String.
Better check the API if you get similar problems.

SCJP 1.4, SCMAD 1.0<br />SCWCD, SCBCD (in progress)
Amin Rais

Joined: Aug 28, 2002
Posts: 20
String in Java is immutable. So you can't change it instead get the new trimmed String.
Elouise Kivineva
Ranch Hand

Joined: Feb 07, 2002
Posts: 154
Oh geez! I really should have seen that...
Thanks ya'll, Elouise
I agree. Here's the link:
subject: My String won't trim
It's not a secret anymore!