If I do not roll a 1, and I would like to "hold" my roll. The code ignores the instructions within the "h" bracket conditional statement, and rolls the dice again. I am confused because if I do roll a 1, the code does work and goes to the computer's turn, setting the flags correctly.
while ((humanScore <= 100) && (computerScore <=100))
    {
        /*loop while human turn is true*/
        while ((humanTurn == true) && (computerTurn == false))
        {
            die = randomGenerator.nextInt(6) + 1;
            if(die == 1)
            {
                System.out.println("Human, you rolled a 1, you lose your points and your turn.");
                humanTurn = false;
                computerTurn = true;
                points = 0;
                System.out.println("Your score is now " + humanScore);
                System.out.println("Computer, it is now your turn.");
            }
            else if(die != 1)
            {
                System.out.println("Human, you currently have " + points + " points to add to score.");
                System.out.println("You have rolled a " + die + " would you like to hold, or roll again?");
                System.out.println("Please enter either r to roll, or h to hold.");
                points = points + die;
                decision = scanner.next();
                if (decision == "r")
                {
                    humanTurn = true;
                }
                if(decision == "h")
                {
                    humanScore = humanScore + points;
                    humanTurn = false;
                    computerTurn = true;
                    points = 0;
                    System.out.println("You hold, your score is now " + humanScore);
                    System.out.println("Computer, it is now your turn.");
                }
            }
        }
 
    