Which of the following can compile?

(a)

    int x = 2;
    double y = x;
(b)
    int x = 2;
    double y = (int) x;
(c)
    int x = 2;
    double y = (double) x;
(d)
    double x = 2.8;
    double y = (double) x;
(e)
    double x = 2.8;
    double y = (int) x;
Select all correct answers.