Note that there are some explanatory texts on larger screens.

plurals
  1. POMenu Characters in Java
    text
    copied!<p>I'm new to programming in Java, and have been having problems understanding how to take user input and translate it into something that my program would understand. I'm trying in this program to input in a character from the user, and have the program take it and use it in the switch statement. Would someone please be kind enough to tell me what keyword or technique I would use to input a character, or translate a string into a character for my program without it being really convoluted? I appreciate your help, and thank you in advance!</p> <pre><code>import java.util.Scanner; //import java.util.Scanner; public class VendingMachine; { public static void main(String[] args) { Scanner scanner = new Scanner (System.in); int selection=0; int x=0; float origItemNum = 15; float origDebitBal = 15; double balanceDebit; double balanceItemNum; double items = 0; char choice = 0; //initialize variables boolean validSelection; System.out.print("\nInitial Account Settings:"); System.out.print("\nUnused Item Capacity: 15"); System.out.print("\nCost (so far) this month: $15"); balanceDebit=origDebitBal; balanceItemNum = origItemNum; while(x==0) { System.out.print("\nMenu:"); System.out.print("\nB (show Bill and starts new month)"); System.out.print("\nU (show Unused capacity for the current month)"); System.out.print("\nC (Consume vending items now -- " + "purchase candy bar, bag of chips, etc.)"); System.out.print("\nA (buy Additional items for current month)"); System.out.print("\nQ (show bill and Quit)"); String strUserAnswer; String strQuestion; String choiceVerify; Scanner input_stream = new Scanner(System.in); strQuestion = new String("What choice would you like? Please" + "enter in either option A, B, U, C- or enter E to quit. "); strUserAnswer = input_stream.nextLine(); choice = (char) Integer.parseInt(strUserAnswer); choiceVerify = ("You chose choice: "); System.out.print(strUserAnswer); input_stream.close(); switch (selection) { case 'b': case 'B': System.out.print("\n\nClosing bill for month:"); // System.out.print("\nUnused items (lost):" ); // System.out.print(balanceItemNum); // System.out.print("\nFinal amount due immediately: $" ); // System.out.print(balanceDebit); // System.out.print("\nStarting new month ...Available items: 15"); // balanceItemNum = 15; // balanceDebit = 15; break; case 'u': case 'U': System.out.print("\nUnused capacity of items you can use: " ); // System.out.print(balanceItemNum); // System.out.print("\nYour debit balance: $" ); // System.out.print(balanceDebit); break; case 'c': case 'C': System.out.print("\nNumber of items you want to purchase:"); // Scanner input = new Scanner(System.in); //items = input.nextDouble(); //balanceItemNum = balanceItemNum-items; // balanceDebit = balanceDebit - items; // System.out.print("\nAvailable Items: " ); // System.out.print(balanceItemNum); break; case 'a': case 'A': String numberString = JOptionPane.showInputDialog("\nAdditional " + "items purchase in sets of 10 (1-3):"); // double number = Double.parseDouble(numberString); // while (number == 1 || number == 2 || number == 3) // number = number * 11; // balanceItemNum = balanceItemNum + number; // balanceDebit = balanceDebit + number; break; case 'e': case 'E': System.out.print("\nYour debit balance: $" ); // System.out.print(balanceDebit); break; } } while (choice != 'e' &amp;&amp; choice != 'E'); System.out.print("\nError: Please enter in either B, U, C, A or Q."); return; } } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload