Tag: hashmap

在java中的HashMap中获取变量类型

我有一个HashMap并存储了3种不同类型的数据(Integer,String,Long)。 如何找出具有特定键的值的类型?

在Java中缓存和重用不可变单例对象的最佳方法是什么?

我有一个表示一组值的类,这些值将用作映射中的键。 这个类是不可变的,我想使用静态工厂模式使它成为每个不同值集的单例。 目标是防止相同对象被创建多次(100+)次并优化equals方法。 我正在寻找缓存和重用此类的先前实例的最佳方法。 首先想到的是一个简单的hashmap,但还有其他选择吗?

将hashmap转换为stringarray

我试图将一个hashmap转换为一个数组,我可以将其放入一个创建的字符串数组中。 但是我得到了java.lang。 我已经将我的drinkar.keySet()。toArray()转换为String [],但它仍然无效。 public String[] receiveArrayList(){ String[] list = new String[0]; try { ois = new ObjectInputStream(socket.getInputStream()); drinkar = (HashMap<String, ArrayList>) (ois.readObject()); System.out.println(drinkar); System.out.println(Arrays.toString(drinkar.keySet().toArray())); list = (String[]) (drinkar.keySet().toArray()); for(int i = 0; i < list.length; i++){ System.out.println(list); } } catch (ClassNotFoundException ex) { System.out.println(ex); } catch (IOException ex) { System.out.println(ex); } return list; }

TreeMap object的get方法返回null值

import java.util.*; public class Sort { static class ValueComparator implements Comparator { Map base; ValueComparator(Map base) { this.base = base; } @Override public int compare(String a, String b) { if (base.get(a) >= base.get(b)) { return 1; } else { return -1; } } } public static void main(String[] args) { HashMap map = new HashMap(); […]

将hashmap拆分为java 8中的分区

我有hashmap: Map<String, Set> myMap 我想将它拆分为包含Map列表: List<Map<String,Set>> listofMaps; ,每张地图最多100个键。 我知道如何以常规的方式做到这一点..(关于入口集的foreach,每100个项目创建新的地图)。 有没有选择用java 8 lambda做什么? (像Lists.partitions() ..)?

使用ibatis将HashMap值插入表中

我在http://old.nabble.com/insert-statement-td21157498.html上找到了这个。我想做同样的事情。我的表中有两列。我可以通过映射hashmap键来插入哈希映射值到列名。现在我想把键值对放在表中,而不管键名。 从上面的链接粘贴。 我想编写一个动态插入语句,但字段和值都是动态的。 我的意思是 insert into table_one ( !!! dynamic list of keys from the HashMap ) values ( !!! values );

使用HashMap填充TableView,HashMap将在HashMap更改时更新

我关注过这篇文章 使用tableview绑定hashmap(JavaFX) 并创建了一个由HashMap数据填充的TableView。 TableView通过从map.entrySet()创建一个ObservableList并将该ObservableList移交给TableView的构造函数,从名为map的HashMap接收其数据。 (代码如下) 但是,虽然它是带有SimpleStringProperty的ObservableList ,但是当对底层HashMap进行更改时,TableView不会更新。 这是我的代码: public class MapTableView extends Application { @Override public void start(Stage stage) throws Exception { try { // sample data Map map = new HashMap(); map.put(“one”, “One”); map.put(“two”, “Two”); map.put(“three”, “Three”); // use fully detailed type for Map.Entry TableColumn<Map.Entry, String> column1 = new TableColumn(“Key”); column1.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<Map.Entry, String>, ObservableValue>() […]

使用Trie实现T9字典?

我必须实现T9字典。 基本上,当我按下9个按键中的任何一个时,它应该显示可以用该组合键启动的前5个单词。 如果我输入’46’,它可以给’酒店’或’好’,这取决于当我按下4时我是打算’g’还是’h’。 优先级取决于哪些单词相对受欢迎 – 例如,您可以使用前100,000个单词中的前5000 个单词。 我正在做的代码是: import import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.util.Date; import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; T9Dict类 public class T9Dict { private static final Runtime s_runtime = Runtime.getRuntime(); public static void main(String[] args) throws Exception { runGC(); long heap1 = usedMemory(); long start = new Date().getTime(); […]

Datasnapshot HashMap无法强制转换为其他类

我已经为我正在设计的应用程序添加了这些function,以便从我的Firebase数据库获取所有“Job_Class”对象的列表,这工作正常,我可以获得所有工作。 问题是我需要使用我已检索的作业集合但是我收到错误: 无法转换java.util.HashMap(已删除包).Job_Class 您将在下面的代码中看到for循环发生此错误。 如果有人能帮助我实际使用检索到的工作,我将非常感激。 public static void setUpCityChildrenListRetriever(final Context context, String cityName) { database.getReference(“Cities”).child(cityName).addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { Map td = (HashMap) dataSnapshot.getValue(); if (td != null) { ArrayList values = new ArrayList(td.values()); //jobsInCityObjects = values; List keys = new ArrayList(td.keySet()); //jobsInCityKeys = (ArrayList) keys; for (Job_Class job: values) { […]

动态制作对象的副本?

我的应用程序将我的Web服务响应存储到WeakHashMap中。 在我的应用程序中,我操纵从UI中的Web服务返回的数据,并且由于对象被引用,它也修改了引用(在我的弱hashmap中)。 有没有办法将对象的副本存储到我的hashmap而不是引用,而不必在我的应用程序中的每个Model对象上实现Clonable?