Ява: двойной против поплавка

В другом упражнении Брюса Экеля написанный мною код принимает метод и изменяет значение в другом классе. Вот мой код:

class Big {
  float b;
}

public class PassObject {
  static void f(Letter y) {
    y.c = 'z';
  } //end f()
  static void g(Big z) {
    z.b = 2.2;
  }

  public static void main(String[] args ) {
    Big t = new Big();
    t.b = 5.6;
    System.out.println("1: t.b : " + t.b);
    g(x);
    System.out.println("2: t.b: " + t.b);
  } //end main
}//end class

Выдает ошибку, говорящую «Возможна потеря точности».

PassObject.java:13: possible loss of precision
found: double
required : float   z.b = 2.2
passobject.java:20: possible loss of precision
found : double
required : float   t.b = 5.6

не можетdoubleдолжно бытьfloatа также?

заранее спасибо

Ответы на вопрос(6)

Ваш ответ на вопрос