为什么55.5必须加f才能赋值给float变量。。。
package Book;
public class Test {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Book one=new Book("红楼梦","曹雪芹","人民文学出版社",10);
System.out.println(one.information());
System.out.println("=======================");
Book two=new Book("小李飞刀","古龙","中国长安出版社",55.5f);
System.out.println(two.information());
}
}
package Book;
public class Book {
//私有属性:书名、作者、出版社、价格
private String bookName,author,publisher;
private float price;
//通过构造方法实现属性赋值
public Book(String bookName,String author,String publisher,float price) {
this.setBookName(bookName);
this.setAuthor(author);
this.setPublisher(publisher);
this.setPrice(price);
}
/*通过公有的get/set方法实现属性的访问,其中:+
1、限定图书价格必须大于10,如果无效需进行提示,并强制赋值为10
2、限定作者、书名均为只读属性
*/
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getPublisher() {
return publisher;
}
public void setPublisher(String publisher) {
this.publisher = publisher;
}
public double getPrice() {
return price;
}
public void setPrice(float price) {
//if(price>10)
this.price = price;
/*else
{
System.out.println("图书价格最低10元");
this.price=10;
}
*/
}
//信息介绍方法,描述图书所有信息
public String information() {
return "书名:"+this.getBookName()+"\n作者:"+this.getAuthor()+"\n出版社:"+this.getPublisher()
+"\n价格:"+this.getPrice();
}
}
为什么55.5必须加f才能赋值给float变量,而上面的10为啥不用修改就可以直接赋值float变量呢?
正在回答
因为你不写明f的话,它会默认是一个double类型的。如果解决了你的疑惑,请采纳,祝学习愉快~
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星