Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I avoid using a lot of variables?

Tags:

java

variables

I would like to create a simple program that would output the atomic mass of any element entered. I am taking a Java course that I recently started so I don't know how to avoid using over 100 variables each with the elements atomic mass.

Also how could I get a if statement to use the name input from the user (which I know how to store in a string) and match it with one of the elements, in order to output the element's mass (corresponding to method used to store the multiple elements).

How can I condense this example code:

int carbon = 12;
int oxygen = 16;
int hydrogen = 1;
int sulfur = 32;
etc....
like image 659
ryanmavilia Avatar asked Dec 08 '22 21:12

ryanmavilia


1 Answers

Sounds like your first step is to learn about the Map data structure. You can use it to associate the string names to integer values and then look them back up later.

Map<String, Integer> elements = new HashMap<String, Integer>();
elements.put("CARBON", 12);
elements.put("OXYGEN", 16);
//etc

Then if you have some input you can look up the number.

String userInput = scanner.next(); // or however you're getting input

Integer atomicWeight = elements.get(userInput.toUpper());
if (atomicWeight == null) //print element not found etc

Then once you have the program down and working you can learn about whatever technology is appropriate for loading the reference data from outside of the source code, whether that's a file or a database or a webservice or whatever.

like image 118
Affe Avatar answered Dec 11 '22 10:12

Affe