Need explanation

Can someone explain why


		float s = 20.0f * 65536.0f;
		System.out.println((int) (((9 - 1)) / s));

produces 0

But


		System.out.println((int) (((9 - 1)) / 20.0f * 65536.0f));

produces 26214