So basically I'm creating a betting program where Player1, Player2, Player3 etc. are objects and each have five initialized fields of -1, which means there is no bet, yet.
I'm asking the users to input their bet number, (these numbers are integers inside of an array) and they can have up to a maximum of five bets, explaining the five initialized fields of -1.
The problem here is I can't seem to find a way to have certain players only input 1 or 2 bets, while another inputs 4 and another 5 for example. My program forces each user to enter 5 integers EVEN if they refuse to bet 5 times. Any way I can make this work?
So here's my driver class: (the other parts of it are irrelevant)
System.out.println("Wheel : 0-32-15-19-4-21-2-25-17-34-6-27-13-36-11-30-8-23-10-5-24-16-33-1-20-14-31-9-22-18-29-7-28-12-35-3-26");
System.out.println("Dealer…Place your bets");
// initializing the six players of the game
Player player1 = new Player(-1,-1,-1,-1,-1);
System.out.println("Player 1: ");
int number1 = keyin.nextInt();
int number2 = keyin.nextInt();
int number3 = keyin.nextInt();
int number4 = keyin.nextInt();
int number5 = keyin.nextInt();
System.out.println("");
Player player2 = new Player(-1, -1, -1, -1, -1);
System.out.println("Player 2: ");
number1 = keyin.nextInt();
number2 = keyin.nextInt();
number3 = keyin.nextInt();
number4 = keyin.nextInt();
number5 = keyin.nextInt();
System.out.println("");
Player player3 = new Player(-1, -1, -1, -1, -1);
System.out.println("Player 3: ");
number1 = keyin.nextInt();
number2 = keyin.nextInt();
number3 = keyin.nextInt();
number4 = keyin.nextInt();
number5 = keyin.nextInt();
System.out.println("");
Player player4 = new Player(-1, -1, -1, -1, -1);
System.out.println("Player 4: ");
number1 = keyin.nextInt();
number2 = keyin.nextInt();
number3 = keyin.nextInt();
number4 = keyin.nextInt();
number5 = keyin.nextInt();
System.out.println("");
Player player5 = new Player(-1, -1, -1, -1, -1);
System.out.println("Player 5: ");
number1 = keyin.nextInt();
number2 = keyin.nextInt();
number3 = keyin.nextInt();
number4 = keyin.nextInt();
number5 = keyin.nextInt();
System.out.println("");
Player player6 = new Player(-1, -1, -1, -1, -1);
System.out.println("Player 6: ");
number1 = keyin.nextInt();
number2 = keyin.nextInt();
number3 = keyin.nextInt();
number4 = keyin.nextInt();
number5 = keyin.nextInt();
System.out.println("");
And here is my other class for players:
public class Player {
int number1;
int number2;
int number3;
int number4;
int number5;
// constructor for each player at the table
public Player(int number1, int number2, int number3, int number4, int number5) {
this.number1 = number1;
this.number2 = number2;
this.number3 = number3;
this.number4 = number4;
this.number5 = number5;
The number1, number2 ... represent the five bets.
Also to clarify, the user can't be asked to input a certain String, int, char whatsoever to let the program know he/she's done inputting their bets. It has to look like this
Player 1: 12 13 15
Player 2: 0 5 4
java.util.Scanner Object, the program is always asking for five numbers because you're making the program ask for five numbers. Instead ofnextInt()do anextLine()and parse the string into integer usingInteger.parseInt()if the input tonextLine()is only\n(return key) assume it to be no bet and go to next player. Or establish you're own convention like, if the user types in "no more" or something. Then match you're input against it at each input.