Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Yorick Toma
742 PointsPizza order example
In the section of getting started with android -> introduction to methods and classes there is an example about pizza's and toppings in which we get a toppings string that represents the toppings on the current pizza. Wouldn't it make more sense if we'd use an array in this situation ?
2 Answers
Dervis OGUNC
Courses Plus Student 2,916 PointsI think it really depends on the application. If order application has checkboxes it makes more sense to use array. But if there is a textbox that you can type your toppings and split by comma, using string will be ok. In addition, If I am not wrong, string data type requires less memory space than array does. So you can carry toppings data as string toppings = "olive, onion, corn";

Gunjeet Hattar
14,483 PointsFirstly the example is used to demonstrate the use of methods (section of code that is called upon by the instantiated object of the class). So in that case it makes prefect sense.
Now to answer your question.
Consider using array in this case now
If I have a pizza store that offers say 5 pizza topping options. Then I would gladly use arrays
String [] pizzaToppings ={"Topping 1", "Topping 2", "Topping 3", "Topping 4", "Topping 5"};
Now let me consider a situation where I am big shot pizza guy and offer close to 60 toppings. So that would mean creating 60 indexes to store the pizza toppings in the array. This causes unnecessary memory usage for not all 60 toppings will be used at a go.
In this case methods seem more appropriate
public Pizza oderPizza (String toppings1){ };
//If I hypothetically call this method from somewhere like this
class someClass{
order(){ pizza.orderPizza("Pineapple") }
}
Hope that explains. Ask again if you have doubts.