Answer = in.next().charAt(0);

You issue is here. The next method reads a single word and does not consume the return. Then when you prompt the user to enter a flower the empty string between the...