Java 编写一个程序,显示水果的订购行情。定义一个带有参数的构造方法,这些参数用于存放产品名,数量和价格。在主程序中输出3种不同的水果,并输出哪种水果最便宜,哪种水果最贵。
import java.math.BigDecimal;
//水果类
public class Market {
private String proName;
private Integer num;
private BigDecimal price;
public Market(String proName, Integer num, BigDecimal price){
this.proName = proName;
this.num = num;
this.price = price;
}
public String getProName() {
return proName;
}
public void setProName(String proName) {
this.proName = proName;
}
public Integer getNum() {
return num;
}
public void setNum(Integer num) {
this.num = num;
}
public BigDecimal getPrice() {
return price;
}
public void setPrice(BigDecimal price) {
this.price = price;
}
@Override
public String toString() {
return "Market{" +
"proName='" + proName + '\'' +
", num=" + num +
", price=" + price +
'}';
}
}
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
//主类,用于输出
public class Main {
public static void main(String[] args) {
Market m1 = new Market("苹果", 100, new BigDecimal(4.5));
Market m2 = new Market("水蜜桃", 50, new BigDecimal(5));
Market m3 = new Market("香蕉", 200, new BigDecimal(2));
System.out.println(m1.toString());
System.out.println(m2.toString());
System.out.println(m3.toString());
List<Market> list = new ArrayList<>();
list.add(m1);
list.add(m2);
list.add(m3);
String max = list.stream().max(Comparator.comparing(Market::getPrice)).get().getProName();
String min = list.stream().min(Comparator.comparing(Market::getPrice)).get().getProName();
System.out.println("价格最贵的水果:" + max);
System.out.println("价格最便宜的水果:" + min);
}
}
若是对你有帮助的话,请采纳一下哈!!!
class 水果{
private double 价格;
private String 名称;
private int 数量;
public 水果(double 价格,String 名称,int 数量){
this.价格=价格;
this.名称=名称;
this.数量=数量;
System.out.println("该水果为"+名称+"价格为"+价格+"数量为"+数量);
}
public 比较(水果 那个水果,水果 还一个水果){
private String 最贵水果名;
System.out.printf("最大")
价格<那个水果.价格?另一个水果.价格<那个水果?最贵水果名=那个水果.名称:最贵水果名=另一个水果.名称:最贵水果名=名称.
System.out.println("最贵的水果为"+最贵水果名);
}
}