我已经设置了一些东西, 现在我想保存一个字符串,并附上一个日期。
private HashMap<String, Date> something = new HashMap<String, Date>();
我遇到的问题是我只想在这个HashMap中有一个东西,所以当我把一个新的String,Date in,旧的那个被删除。
在我添加一个之前,我已经通过调用clear得到了这个,但后来我遇到了另一个问题:
String current = something.get ????
如上所述,我只想获得1个条目。没有约会。
有更好的选择吗?或者我看到一些完全错误的东西?
答案 0 :(得分:2)
您可以使用Pair<K,V>
:
表示名称 - 值对的便利类。
// The import statement
import javafx.util.Pair;
Pair<String, Date> something = new Pair<>("string1", new Date());
你可以使用
something.getKey()
获取String
,&amp; something.getValue()
获取Date
。
答案 1 :(得分:0)
你有几种可能性。你可以只有一个String
和一个Date
变量以及一个setter:
private String someString;
private Date someDate;
private void setStringDate(String someString, Date someDate) {
this.someString = someString;
this.someDate = someDate;
}
另一种可能性是将该功能封装在一个类中:
public class StringDate {
private String someString;
private Date someDate;
// setter ... (like above)
public String getSomeString() {
return someString;
}
public Date getSomeDate() {
return someDate;
}
}
当然,如果您需要除String
和Date
之外的其他数据结构,您可以在自己的类中使用泛型来实现它!
答案 2 :(得分:0)
似乎something
应该只是一个存储String,Date
对的变量。如果您不想为此定义一个小类,或者使用两个变量,则可以使用Pair。