Java Logic Questions