Если бы вы могли добавить свой код бегуна или хотя бы метод main()
, это было бы полезно.В любом случае, я пытался воспроизвести вашу проблему, но, похоже, она работает без проблем или чего-то подобного.
Здесь я использовал ту же реализацию класса UserImpl
, что и вы, я просто добавил метод get, который возвращаетсопоставление с методом main
:
import java.util.*;
import java.util.HashMap;
public class UserImpl implements User {
HashMap<String, Double> videoRecords = new HashMap<>();
@Override
public void updateVideoRecord(String currentVideo, double seconds) {
videoRecords.put(currentVideo, seconds);
}
public HashMap<String, Double> getRecords() {
return videoRecords;
}
}
, который реализуется из этого интерфейса 'Mock', потому что в вашей реализации вы переопределяете метод updateVideoRecord()
.
Очевидно, что вMain
Я создаю объект класса UserImpl
, помещает новую запись в HashMap и печатает до и после помещения.
import java.util.*;
public class Main {
public static void main(String[] args) {
UserImpl userImpl = new UserImpl();
HashMap<String, Double> records = userImpl.getRecords();
System.out.println("The size of the map is " + records.size());
System.out.println("Initial Mappings are: " + records);
userImpl.updateVideoRecord("theCurrentVideo", 360);
System.out.println("The size of the map is " + records.size());
System.out.println("Initial Mappings are: " + records);
}
}
Наконец, здесь вы можете видеть, что вывод выглядит полностью как нужнопоэтому я не вижу твоей проблемы.Поэтому, если бы вы могли более подробно рассказать о вашей проблеме, возможно, я мог бы помочь вам лучше.Если нет, то я надеюсь, что это поможет вам решить вашу проблему.
kareem@Kareems-MBP:Desktop$ javac Main.java
kareem@Kareems-MBP:Desktop$ java Main
The size of the map is 0
Initial Mappings are: {}
The size of the map is 1
Initial Mappings are: {theCurrentVideo=360.0}