943,754 Members | Top Members by Rank

Ad:
  • Java Discussion Thread
  • Unsolved
  • Views: 934
  • Java RSS
Dec 4th, 2008
0

ReplaceAll Method

Expand Post »
Okay so this is the deal. I want to make a call to a routine that replaces all of one certain type of integer with a number. I have it to where it is replaceing the first, however, it misses the tail node.
	public static SimpleList<Integer> replaceAll(Integer old, Integer nEw, SimpleList<Integer> l)
// returns a copy of l with all occurrences of old replaced with nEw
	{
		if(l.isEmpty())
			return new SimpleList<Integer>();
		else if (l.head().equals(old))
			return new SimpleList<Integer>(nEw, l.tail());
		if (l.tail().equals(old))
			return new SimpleList<Integer>(nEw, l.tail());
		else
			return new SimpleList<Integer>(l.head(), replaceAll(old, nEw,l.tail()));

to make the call to the method I use System.out.println(Proj7.replaceAll(new Integer(2),new Integer(88),l1));
the list contains 1,1,2,2,3,3. Its printing out 1,1,88,2,3,3.

is my logic wrong? any helpful hints?

btw .head() and .tail() are part of a class called SimpleList. It just points to the first, and next node.
Similar Threads
Reputation Points: 10
Solved Threads: 1
Newbie Poster
VirusTalker is offline Offline
6 posts
since Nov 2007
Dec 4th, 2008
0

Re: ReplaceAll Method

I don't have a solution for you because I don't know enough about how this SimpleList class is working to understand why you would be returning a new reference that you create by using the nEw Integer and the tail of the list. Is there some reason you need to use a recursive call like is this for a project or something, if not you would be way better off just iterating through the list and doing comparisons? I think if you want help you're probably going to have to put the implementation of the constructors you're calling up on the forum.

ah sorry didn't see you're old post initially I'll look through that and see if I have a solution
Last edited by shaun.husain; Dec 4th, 2008 at 9:50 pm.
Reputation Points: 11
Solved Threads: 1
Newbie Poster
shaun.husain is offline Offline
4 posts
since Nov 2008

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Java Forum Timeline: Recursion Problem
Next Thread in Java Forum Timeline: Combinations





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC