• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Bear Bibeault
  • Junilu Lacar
Sheriffs:
  • Jeanne Boyarsky
  • Tim Cooke
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • salvin francis
  • Frits Walraven
Bartenders:
  • Scott Selikoff
  • Piet Souris
  • Carey Brown

Vector problem

 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have a vector which contains the following data (just an example of what the vector contains below:-
[J46, J53B0907, J54B0907/1, J78, J6JT4567]
I want to be able to replace the J characters (the first character after each comma) with K characters. It wouldnt be possible to do a global replace on the letter J as J may appear after the first character (as shown near the end).
I have no idea how to do this, would anybody like to help a student out?
 
Ranch Hand
Posts: 1258
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Well, student ... all you need to do is iterate through the elements in your Vector, checking the first character of each String. If it is a "J" replace it with whatever you want, and set the Vector element accordingly.
If you're looking for some actual code here, look up the API docs and work through it. You'll much faster hacking through it yourself.
 
town drunk
( and author)
Posts: 4118
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
As a teacher, I like this problem, because it tests a couple of concepts. One, you have to be aware of the immutability of Strings. Two, you have to understand how to add and remove items from a Vector: simply add to the vector won't do the trick. Three, you have to demonstrate some mastery String manipulation. This should be a good learning experience.
I would start small. First, modify the first J in a String: and make sure you don't modify subsequent 'J's. Next, modify the first J in an Array of Strings. Finally, adjust the vector so it holds the modified data.
Best regards,
M
 
Luke Chadwick
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Im totally not getting the documentation (Sun's just confuses me) and books that I've looked. I've been trying to do the following:-
x.substring(1,3).replace("t", "k");
where x is a String = "Standing"
But I keep getting the following error
replace(char,char) in java.lang.String cannot be applied to (java.lang.String,java.lang.String)
x.substring(1,3).replace("t", "k");
^
Removing the substring doesnt help. Please help me.
 
Ranch Hand
Posts: 1873
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Luke
It says replace(char, char) in java.lang.String CAN'T BE aplied to replace(String, String) right? That means, in String class there is no method replace() having two Strings as argument. It needs two characters. So try,
x.substring(1,3).replace('t','k'); and that should work.
also, don't forget that x is a string hence non-mutable so you have to do,
x = x.substring(1,3).replace('t','k'); if u want to update value of variable x . It will not automatically assign the replace operation's outcome to variable x.
Regards
Maulin
 
Talk sense to a fool and he calls you foolish. -Euripides A foolish tiny ad:
the value of filler advertising in 2020
https://coderanch.com/t/730886/filler-advertising
    Bookmark Topic Watch Topic
  • New Topic