logo CodeStepByStep logo


Language/Type: Java recursion string return
Related Links:

Write a recursive method named replaceAll that accepts three parameters: a string s, a char from, and a char to as parameters, and returns a new string that is the same as s but with any occurrences of from changed to to. For example, the call of replaceAll("crazy raccoons", 'c', 'k') should return "krazy rakkoons" and the call of replaceAll("BANANA", 'A', 'O') should return "BONONO".

Your method is case-sensitive; if the character from is, for example, a lowercase 'f', your method should not replace uppercase 'F' characters. In other words, you should not need to write code to handle case issues in this problem.


  • Do not use any loops; you must use recursion.
  • Do not declare any global variables.
  • Do not call any of the following string member methods: find, rfind, indexOf, contains, replace, split. (The point of this problem is to solve it recursively; do not use a library method to get around recursion.)
  • Do not use any auxiliary data structures like ArrayList, TreeMap, TreeSet, array, etc.
  • You can declare as many primitive variables like ints as you like, as well as strings.
  • You are allowed to define other "helper" methods if you like; they are subject to these same constraints.
Type your Java solution code here:

This is a method exercise. Write a Java method as described. Do not write a complete program or class; just the method(s) above.

You must log in before you can solve this problem.

Log In

Need help?

If you do not understand how to solve an exercise or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect tests, etc.), please

Is there a problem? Contact a site administrator.

©, all rights reserved.