写一个电话类(Phone),具有品牌brand、型号model、价格price三个属性。从键盘上输入若干条电话信息,根据它们的价格由低到高排序。如果价格相同,则按照品牌的字母排序(由a到z)并把电话信息的排序结果写入磁盘文件。要求用户从键盘上输入指定品牌和型号的电话,再从前面写入文件中读取电话信息,要求删除用户指定的品牌型号的电话之后将结果保存为新文件。
请给出具体思路
在Java中写一个电话类(Phone),具有品牌brand、型号model、价格price三个属性。用键盘输入信息,并排序。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- CSDN专家-sinJack 2021-11-30 12:36关注
package com.example.demo; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Phone implements Comparable<Phone>{ private String brand; private String model; private int price; public Phone(String brand, String model, int price) { this.brand = brand; this.model = model; this.price = price; } public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } @Override public int compareTo(Phone o) { //先按照价格排序 if (this.price>o.price){ return (this.price-o.price); } if (this.price<o.price){ return (this.price-o.price); } //再按照品牌排序 if (this.brand.compareTo(o.getBrand())>0){ return 1; } if (this.brand.compareTo(o.getBrand())>0){ return -1; } return 0; } @Override public String toString() { return "Phone{" + "brand='" + brand + '\'' + ", model='" + model + '\'' + ", price=" + price + '}'; } public static void main(String[] args) { List<Phone> list = new ArrayList<Phone>(); list.add(new Phone("a","6.6英寸",6000)); list.add(new Phone("b","6.6英寸",7000)); list.add(new Phone("b","6.6英寸",6000)); list.add(new Phone("c","6.6英寸",8000)); Collections.sort(list); for (Phone phone: list) { System.out.println(phone); } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 对于知识的学以致用的解释
- ¥50 三种调度算法报错 有实例
- ¥15 关于#python#的问题,请各位专家解答!
- ¥200 询问:python实现大地主题正反算的程序设计,有偿
- ¥15 smptlib使用465端口发送邮件失败
- ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
- ¥15 对于squad数据集的基于bert模型的微调
- ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
- ¥20 steam下载游戏占用内存
- ¥15 CST保存项目时失败