Java程序题,用ArrayList编写

 我来答
闲话生活屋
推荐于2016-06-10 · 超过19用户采纳过TA的回答
知道答主
回答量:34
采纳率:100%
帮助的人:24.9万
展开全部


public class Computer {
private String Id ;//编号
private String CPU ;//CPU编号
private String motherBoard ;//主板
private int HD ;//硬盘大小
private int Memory ; //内存大小
private String GPU ; //显存编号
private float price ; //价格

public Computer() {

}

public Computer(String id, String cPU, String motherBoard, int hD,
int memory, String gPU, float price) {
super();
Id = id;
CPU = cPU;
this.motherBoard = motherBoard;
HD = hD;
Memory = memory;
GPU = gPU;
this.price = price;
}

public String getId() {
return Id;
}
public void setId(String id) {
Id = id;
}
public String getCPU() {
return CPU;
}
public void setCPU(String cPU) {
CPU = cPU;
}
public String getMotherBoard() {
return motherBoard;
}
public void setMotherBoard(String motherBoard) {
this.motherBoard = motherBoard;
}
public int getHD() {
return HD;
}
public void setHD(int hD) {
HD = hD;
}
public int getMemory() {
return Memory;
}
public void setMemory(int memory) {
Memory = memory;
}
public String getGPU() {
return GPU;
}
public void setGPU(String gPU) {
GPU = gPU;
}
public float getPrice() {
return price;
}
public void setPrice(float price) {
this.price = price;
}
public String toString() {
return "Computer [Id=" + Id + ", CPU=" + CPU + ", motherBoard="
+ motherBoard + ", HD=" + HD + ", Memory=" + Memory + ", GPU="
+ GPU + ", price=" + price + "]";
}


}

import java.util.ArrayList;
import java.util.Scanner;


public class MainComputer {
 public static void main(String[] args) {
ArrayList<Computer> cList = new ArrayList<Computer>();
Scanner scanner = new Scanner(System.in);
System.out.print("请输入需要几台计算机:");
int cont = scanner.nextInt();
//手动输入电脑的信息并保存到list中
for (int i = 1; i <= cont; i++) {
System.out.println("请输入第" + i + "台计算机的编号:");
String id = scanner.next();
if (cList.size()!=0) {//当电脑数量大于1时,需要判断电脑编号是否有重复(电脑编号唯一性)
for (int j = 0; j < cList.size(); j++) {
while(id.equalsIgnoreCase(cList.get(j).getId())) {
System.out.println("改编号已被使用,请重新输入!");
System.out.println("请输入第" + i + "台计算机的编号:");
id = scanner.next();
}
}
}
System.out.println("请输入第" + i + "台计算机的CPU编号:");
String CPU = scanner.next();
System.out.println("请输入第" + i + "台计算机的主板型号:");
String motherBoard = scanner.next();
System.out.println("请输入第" + i + "台计算机的硬盘大小:");
int HD = (int) getInt(scanner , Integer.class);
System.out.println("请输入第" + i + "台计算机的内存大小:");
int memory = (int) getInt(scanner , Integer.class);
System.out.println("请输入第" + i + "台计算机的显存编号:");
String GPU = scanner.next();
System.out.println("请输入第" + i + "台计算机的价格:");
float price = getInt(scanner, Float.class);
Computer computer = new Computer(id, CPU, motherBoard, HD, memory, GPU, price);
cList.add(computer);
}
//输出所有电脑的信息
for (Computer computer : cList) {
System.out.println(computer.toString());
}
}
 
 public static float getInt(Scanner scanner ,Class<?> c){//获得正确的整数以及浮点数
float num = 0;
while (true) {
if(c.getName().contains("Integer")){//如果类型匹配整型
if(scanner.hasNextInt()){//查看是否输入的是整数
num = scanner.nextInt();
break;
}else{
System.out.println("必须输入整数");
scanner.next();
}
}else{
if(scanner.hasNextFloat()){//查看是否输入的是浮点数
num = scanner.nextFloat();
break;
}else{
System.out.println("必须输入整数");
scanner.next();
}
}

}
return num;
 }
 
}

hyt0302
2015-12-07 · TA获得超过113个赞
知道小有建树答主
回答量:81
采纳率:100%
帮助的人:30.6万
展开全部
public class Test {
public static void main(String[] args) {
ArrayList<Computer> cList = new ArrayList<Computer>();
//为ArrayList添加三个元素
for (int i = 0; i < 3; i++) {
cList.add(new Computer());
}
//输出计算机信息,第二步没看懂啥意思
Scanner scanner = new Scanner(System.in);
System.out.println("输入计算机型号0-2");
int index = scanner.nextInt();
System.out.println(cList.get(index));
scanner.close();
//输出详细信息
for (Computer computer : cList) {
computer.toString();
}
}
}

class Computer {
private int id;
private int cpu;
private int mainBoard;
private int hardDisk;
private long memory;
private int graphics;
private float price;

//显示所有属性
@Override
public String toString() {
// TODO Auto-generated method stub
return "id=" + id + ",cpu=" + cpu + ",mainBoard" + mainBoard
+ ",hardDisk=" + hardDisk + ",memory" + memory + ",graphices"
+ graphics;
}

//添加cpu型号
public void setCpu(int cpu) {
this.cpu = cpu;
}

//添加主板型号
public void setMainBoard(int mainBoard) {
this.mainBoard = mainBoard;
}

//添加硬盘大小
public void setHardDisk(int hardDisk) {
this.hardDisk = hardDisk;
}

//添加内存大小
public void setMemory(long memory) {
this.memory = memory;
}

//添加显卡型号
public void setGraphics(int graphics) {
this.graphics = graphics;
}

//获取价格
public float getPrice() {
return price;
}

//设置价格
public void setPrice(float price) {
this.price = price;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Cansluck
2015-12-07 · 知道合伙人软件行家
Cansluck
知道合伙人软件行家
采纳数:502 获赞数:1407
毕业于湖南农业大学计算机科学与技术专业,学士学位。从事java开发4年,读过大量的java开发的书籍

向TA提问 私信TA
展开全部
1、把题目给列出来吧,看看什么题目。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e0360cb
2015-12-06
知道答主
回答量:32
采纳率:0%
帮助的人:11.6万
展开全部
太TM滴复杂了,谁TM出的这么难的题!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式