Các lỗi thời gian biên dịch cụ thể trong lớp học của bạn là kết quả của cố gắng để gọi một phương thức trên một giá trị được khai báo là một loại nguyên thủy. Các loại nguyên thủy không phải là Object
s và do đó không có các thuộc tính. Do đó họ không có bất kỳ phương pháp nào.
Bạn có thể có thể đúc các giá trị nguyên thủy double
đến một giá trị nguyên thủy int
,
double b = Math.sqrt(absoluteNumber) ;
int a = (int) b ;
hoặc cast double
đến một Double
--- sử dụng một tính năng Java gọi auto-boxing --- theo thứ tự sử dụng phương pháp intValue
của giao diện Number
cài đặt bởi lớp Double
:
double b = Math.sqrt(absoluteNumber) ;
int a = ((Double) b).intValue() ;
Một cách khác là sử dụng valueOf
và intValue
phương thức của lớp Double
:
double b = Math.sqrt(absoluteNumber) ;
int a = (Double.valueOf(b)).intValue() ;
'int c = (int) b;' – Mysticial
có thể trùng lặp của [Làm cách nào để ghép đôi thành int trong Java?] (http://stackoverflow.com/questions/2143476/how-to-cast-a-double-to-an-int-in-java) –