当前位置: 首页 > 知识库问答 >
问题:

我为SortedMap创建了一个put()方法,但似乎无法让测试代码正常工作

冯卜鹰
2023-03-14

我就是无法让它工作。想法是设计一种方法,将键值对添加到Map,尽管程序编译正确,但测试格式为“tracker.put”(“17/06/2019”,“Jeffrey Burns”)的代码;“显示错误消息

我尝试将方法参数更改为(String, List)。

public class OfficeDeliveryTracker

private SortedMap<String, List<String>> deliveryTracker; 

/**
* Constructor for objects of class OfficeDeliveryTracker
*/
public OfficeDeliveryTracker()
{
  this.deliveryTracker = new TreeMap<>();  
}
/**
 * Adds key-value pair to the map
 */
public void addMapEntry(String key, String value)
{
   List<String> list = deliveryTracker.get(key);
   if (list == null) {
     list = new ArrayList<String>();
   }
   list.add(value);
   deliveryTracker.put(key, list);
 }

我期望测试代码跟踪器。put(“2019年6月17日”,“Jeffrey Burns”);但改为获取“错误:第1行-找不到符号-方法put(java.lang.String,java.lang.String)”

共有1个答案

颜思淼
2023-03-14

查看以下代码:

使用SortedMap时

您不能使用tracker.put("17/06/2019","Jeffrey Burns")因为"Jeffrey Burns"是String而不是List of String

public class OfficeDeliveryTracker {
    private SortedMap<String, List<String>> deliveryTracker;

    /**
     * Constructor for objects of class OfficeDeliveryTracker
     */
    public OfficeDeliveryTracker() {
        this.deliveryTracker = new TreeMap<>();
    }

    /**
     * Adds key-value pair to the map
     */
    public void addMapEntry(String key, String value) {
        List<String> list = deliveryTracker.get(key);
        if (list == null) {
            list = new ArrayList<String>();
        }
        list.add(value);
        deliveryTracker.put(key, list);
    }

    public static void main(String[] args) {
        OfficeDeliveryTracker tracker = new OfficeDeliveryTracker();
        //tracker.put("17/06/2019", "Jeffrey Burns"); // Error : The method put(String, String) is undefined for the type OfficeDeliveryTracker;
        tracker.addMapEntry("17/06/2019", "Jeffrey Burns");
    }
}
 类似资料:
  • 我在Spark上使用Python时遇到问题。我的应用程序有一些依赖项,如numpy、pandas、astropy等。我无法使用virtualenv创建具有所有依赖项的环境,因为集群上的节点除了HDFS之外没有任何公共挂载点或文件系统。因此,我一直坚持使用。我将站点包的内容打包在一个ZIP文件中,并使用

  • 问题内容: 我正在尝试通过检查golang TCPConn.Write返回的错误来检测发送失败,但它为nil。我也尝试使用TCPConn.SetWriteDeadline,但没有成功。 事情就是这样发生的: 服务器启动 客户端连接 服务器发送一条消息,客户端收到它 客户端 关闭 服务器再发送一条消息:没有错误 服务器发送第三条消息:仅现在出现错误 问题 :为什么只有第二条消息发送给不存在的客户端会

  • 所以我不知道如何让桌子在雪花中旋转。我试图在这里为帮助页面建模https://docs.snowflake.com/en/sql-reference/constructs/pivot.html。 枢轴输出 sql文本:

  • 我对nodeJS…和编程是新手。但我试图让这段代码工作,我无法理解为什么它似乎不起作用。更糟糕的是,我也不知道如何排除故障。如果我使用控制台。日志语句,我可以看到,一旦我启动网页,它就会连接,但网页从未从nodeJS服务器收到消息,服务器也从未从网页收到消息。我正在使用Chrome浏览器。 服务器.js: 我从命令提示符在树莓pi zero w上启动它: index.html引用interface

  • 因此,我正在为我使用的服务器制作一个不和谐机器人,并希望添加一个审查功能,以便如果用户在“禁止使用的词语”列表中说了一些话,而不是在特定的频道(工作)中,它将编辑消息以使“[编辑”在它的地方。我相信代码本身是工作的,但是每次我测试它时都会收到这个错误消息。我尝试通过不和谐开发者门户添加权限(选择“OAuth2”,选择“机器人”范围,以及管理角色、查看频道、发送消息、管理消息、读取消息历史记录和提及

  • 我正在使用Mapstruct v1.4.1.Final将Hibernate实体映射到相应的DTO。我使用Spring Boot,所以我的映射器的类具有等于的。 我有2个实体,和。包含一个实例: 人 地址 这是我写的地图: 地图绘制者 您可以看到,我对< code>PersonMapper说使用< code>AddressMapper来使用它的实现。 但是,为了将地址转换为地址dto,我在类中找到了