Difference between revisions of "FillArray Method"

From CompSciWiki
Jump to: navigation, search
(Added quotations to student quotes)
 
(8 intermediate revisions by 4 users not shown)
Line 2: Line 2:
  
 
|Problem= Today we'll look at returning a new array from a different method.
 
|Problem= Today we'll look at returning a new array from a different method.
 +
  
 
Let's now expand on the printArray program created in the previous problem. Recall you created a method to print the names of students stored in different arrays for different classes. You now have been given an additional class to teach, COMP2040, and must input a new list of students for this class. To do this, you will need to create an additional method in the existing program.
 
Let's now expand on the printArray program created in the previous problem. Recall you created a method to print the names of students stored in different arrays for different classes. You now have been given an additional class to teach, COMP2040, and must input a new list of students for this class. To do this, you will need to create an additional method in the existing program.
 +
  
 
Take the sample solution from printArray below and add a fillArray method to it. This method should accept a number as an integer as input, representing the number of students in the class, and return an array of Strings, containing the students names, as output. You will need some method of taking user input within this method.
 
Take the sample solution from printArray below and add a fillArray method to it. This method should accept a number as an integer as input, representing the number of students in the class, and return an array of Strings, containing the students names, as output. You will need some method of taking user input within this method.
  
<pre>public class PrintArray{
+
 
 +
{{CodeBlock
 +
|Code=public class PrintArray{
 
public static void main (String [] args){
 
public static void main (String [] args){
 
String [] comp1010 = { "Adam", "Bob", "Carl", "David", "Edward"};
 
String [] comp1010 = { "Adam", "Bob", "Carl", "David", "Edward"};
Line 31: Line 35:
 
}
 
}
 
}
 
}
</pre> Use the printArray method to print out the all class lists after creating the new list.
+
}} Use the printArray method to print out the all class lists after creating the new list.
  
  
|SideSectionTitle=Arrays and Methods
+
|SideSectionTitle=...By Students
 
|SideSection=  
 
|SideSection=  
[[Image:Wiki_chars01.jpg|float|267px]]
+
"Using methods with arrays is just the beginning of the myriad ways in which methods will assist you in future programming. I remember when I first began learning about methods, they seemed like a complete waste of time. I mean, why section off this small bit of code instead of just putting the couple of lines in the main? All I can say is learn this stuff well, because I couldn't have been more wrong. Methods are the building blocks that you will used for everything else you do in programming."
 
<BR>
 
<BR>
|Solution= To create the fillArray method, use a loop that for each index of the array prompts the user to enter a name, takes the users input, and then inserts it into the array.
+
|Solution= To create the fillArray method, first create a new array in the new method. Then use a for loop to cycle through the entire array. Inside the loop it should prompt the user to enter a name, and insert the user input into the array.
|SolutionCode=<pre>import java.io.*;
+
|SolutionCode=import javax.swing.*;
  
 
class Students{
 
class Students{
Line 63: Line 67:
 
public static String[] fillArray(int size){
 
public static String[] fillArray(int size){
 
        String[] names = new String[size];                                        //an Array to hold the entered names
 
        String[] names = new String[size];                                        //an Array to hold the entered names
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  //a BufferedReader to accept user input of names
 
 
 
 
                 for (int i=0;i<names.length;i++){
 
                 for (int i=0;i<names.length;i++){
System.out.print("Please enter a name: ");                         //prompt the user for a name
+
names[i] = JOptionPane.showInputDialog(null, "Please enter a name:");//insert the user input name into the array
try{
+
names[i] = br.readLine();                                  //insert the user input name into the array
+
}
+
catch (IOException ioe){
+
System.out.println("ERROR!!!");
+
System.exit(1);
+
}
+
 
}
 
}
 
return names;
 
return names;
 
}
 
}
 
}
 
}
</pre>
 
 
}}
 
}}

Latest revision as of 15:31, 8 December 2011

Back to the Program-A-Day homepage

Problem

Today we'll look at returning a new array from a different method.


Let's now expand on the printArray program created in the previous problem. Recall you created a method to print the names of students stored in different arrays for different classes. You now have been given an additional class to teach, COMP2040, and must input a new list of students for this class. To do this, you will need to create an additional method in the existing program.


Take the sample solution from printArray below and add a fillArray method to it. This method should accept a number as an integer as input, representing the number of students in the class, and return an array of Strings, containing the students names, as output. You will need some method of taking user input within this method.


 public class PrintArray{
	public static void main (String [] args){
		String [] comp1010 = { "Adam", "Bob", "Carl", "David", "Edward"};
		String [] comp1020 = { "Amy", "Beth", "Cindy", "Dawn", "Ellen"};
		String [] comp1260 = { "Mike", "Mary", "Matthew", "Megan", "Moe"};

		System.out.println("COMP 1010:");
		printArray(comp1010);
		System.out.println("COMP 1020:");
		printArray(comp1020);				
		System.out.println("COMP 1260:");
		printArray(comp1260);				

		System.out.println("--End of Processing--");
	}

	public static void printArray(String [] courseList){

		for (int i=0; i<courseList.length;i++){	
			System.out.println(courseList[i]);
		}
		System.out.println();	
	}
} 
Use the printArray method to print out the all class lists after creating the new list.
 

...By Students

"Using methods with arrays is just the beginning of the myriad ways in which methods will assist you in future programming. I remember when I first began learning about methods, they seemed like a complete waste of time. I mean, why section off this small bit of code instead of just putting the couple of lines in the main? All I can say is learn this stuff well, because I couldn't have been more wrong. Methods are the building blocks that you will used for everything else you do in programming."

Solution

To create the fillArray method, first create a new array in the new method. Then use a for loop to cycle through the entire array. Inside the loop it should prompt the user to enter a name, and insert the user input into the array.

Code

Solution Code

Back to the Program-A-Day homepage