I am taking my first semester of Java programming, and we've just covered the conditional operator (? :) conditions. I have two questions which seem to be wanting me to "nest" conditional operators within eachother, something that I could easily (yet tediously) do with if-else-if statements.
1) "Assume that month is an int variable whose value is 1 or 2 or 3 or 5 ... or 11 or 12. Write an expression whose value is "jan" or "feb" or "mar" or "apr" or "may" or "jun" or "jul" or "aug" or "sep" or "oct" or "nov" or "dec" based on the value of month. (So, if the value of month were 4 then the value of the expression would be "apr".)."
an idea I had looks something like this:
(month==1)?"jan":(month==2)?"feb": (month==3)?"mar": (month==4)?"apr":
(month==5)?"may":(month==6)?"jun": (month==7)?"jul":(month==8)?"aug":
(month==9)?"sep": (month==10)?"oct": (month==11)?"nov": (month==12)?"dec":
(I know this isn't a complete expression, but I'm not sure how to phrase the operator to handle so many conditions.)
2) Assume that credits is an int variable whose value is 0 or positive. Write an expression whose value is "freshman" or "sophomore" or "junior" or "senior" based on the value of credits. In particular: if the value of credits is less than 30 the expression's value is "freshman"; 30-59 would be a "sophomore", 60-89 would be "junior" and 90 or more would be a "senior".
again, I've been toying around and the best I can come up with is something like(and I'm probs missing some necessary parentheses):
credits < 30 ? "freshman": credits >= 30 && <=59 ?
"sophomore": credits >= 60 && <= 89 ? "junior": "senior"
I've Googled around and checked the database here, but I don't THINK that there's anything exactly like this question; forgive me if I'm wrong. The program (CodeLab) won't take Switch-Case or the if-else-if solution, always suggesting I should be using the conditional ? : operator, but everywhere I've looked I haven't figured out how to rig the operator to handle so many conditions. We aren't far past this in the book, so if you guys could help me find a solution, it'd be great if it's one that jives with the little bit I've learned so far.