gpt4 book ai didi

java - 如何通过方法将item添加到HashMap中

转载 作者:行者123 更新时间:2023-12-02 00:57:23 25 4
gpt4 key购买 nike

我想通过该方法将 DisplayCard 类中的一些项目添加到 hashMap displayCardMap 中。hashmap 的输出看起来像

brand: modelNumber: memorySize

然后我创建了一些方法来帮助我。

import java.util.*;

public class ComputerShop {

Map <String, Double> displayCardMap = new HashMap <String, Double>();

public void addDisplayCard(DisplayCard oneDisplayCard){
displayCardMap.put(oneDisplayCard.getBrand() + ": " + oneDisplayCard.getmodelNumber(), oneDisplayCard.getmemorySize());
}
}

public class DisplayCard {
String brand;
String modelNumber;
double memorySize;

//constructor method
public DisplayCard(String brand, String modelNumber, double memorySize){
this.brand = brand;
this.modelNumber = modelNumber;
this.memorySize = memorySize;
}

// getter method
public String getBrand(){
return brand;
}

public String getmodelNumber(){
return modelNumber;
}

public double getmemorySize(){
return memorySize;
}
}

但是在通过 addDisplayCard() 创建新项目后出现错误

public class TestComputerShop{
public static void main(String[] args) {

ComputerShop ashop = new ComputerShop();
// call method
ashop.addDisplayCard("ATI", "R9 390",6.0);

}
}

所以我想知道问题出在哪里。

我应该先创建一个新的 DisplayCard 对象吗?或者函数一开始就是错误的。

最佳答案

您需要创建一个新的 DisplayCard 对象,因为您的方法需要一个:

public class TestComputerShop {
public static void main(String[] args) {

ComputerShop ashop = new ComputerShop();
// call method
ashop.addDisplayCard(new DisplayCard("ATI", "R9 390",6.0));

}
}

另一个解决方案是在 ComputerShop 内使用方法重载:

public class ComputerShop {

Map <String, Double> displayCardMap = new HashMap <String, Double>();

public void addDisplayCard(DisplayCard oneDisplayCard){
displayCardMap.put(oneDisplayCard.getBrand() + ": " + oneDisplayCard.getmodelNumber(), oneDisplayCard.getmemorySize());
}

public void addDisplayCard(String brand, String modelNumber, double memorySize){
this.addDisplayCard(new DisplayCard(brand, modelNumber, memorySize));
}
}

关于java - 如何通过方法将item添加到HashMap中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61170704/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com