204k views
5 votes
Write the method makeNames that creates and returns a String array of new names based on the method’s two parameter arrays, array1 and array2. The method creates new names in the following fashion: for each String in array1, concatenate a String from array2. Add a character space between the two strings: array1[i] + " " + array2[j]

In the example below the array names contains 20 names including "David A", "David B", "David C", …, "Lucy E".

String[] first = { "David", "Mike", "Katie", "Lucy"};
String[] middle = {"A", "B", "C", "D", "E");
String[] names = makeNames (first, middle);

If one of the parameter arrays has size 0, return the other parameter array.
In the example below the array names contains 4 names: "David", "Mike", "Katie", "Lucy".

String[] first = {"David", "Mike", "Katie", "Lucy"};
String[] middle = {};
String[] names = makeNames (first, middle);

Use the method header: public static String[] makeNames (String[] array1, String[] array2)

Create a String array containing permutations of strings from two String array parameters.

User Fthdgn
by
4.0k points

1 Answer

3 votes

Answer:

  1. import java.util.Arrays;
  2. public class Main {
  3. public static void main(String[] args) {
  4. String [] first = {"David", "Mike", "Katie", "Lucy"};
  5. String [] middle = {"A", "B", "C", "D"};
  6. String [] names = makeNames(first, middle);
  7. System.out.println(Arrays.toString(names));
  8. }
  9. public static String [] makeNames(String [] array1, String [] array2){
  10. if(array1.length == 0){
  11. return array1;
  12. }
  13. if(array2.length == 0){
  14. return array2;
  15. }
  16. String [] newNames = new String[array1.length];
  17. for(int i=0; i < array1.length; i++){
  18. newNames[i] = array1[i] + " " + array2[i];
  19. }
  20. return newNames;
  21. }
  22. }

Step-by-step explanation:

The solution code is written in Java.

Firstly, create the makeNames method by following the method signature as required by the question (Line 12). Check if any one the input string array is with size 0, return the another string array (Line 14 - 20). Else, create a string array, newNames (Line 22). Use a for loop to repeatedly concatenate the string from array1 with a single space " " and followed with the string from array2 and set it as item of the newNames array (Line 24-26). Lastly, return the newNames array (Line 28).

In the main program create two string array, first and middle, and pass the two arrays to the makeNames methods as arguments (Line 5-6). The returned array is assigned to names array (Line 7). Display the names array to terminal (Line 9) and we shall get the sample output: [David A, Mike B, Katie C, Lucy D]

User Mahesh Samudra
by
4.0k points