Java 无法放入HashMap

Java 无法放入HashMap,java,hashmap,Java,Hashmap,我试图将每个字符(作为int)及其计数放入Hashmap中。 但是,当我打印地图时,值总是空的。 有人能帮我找出我的代码出了什么问题吗 公共类CharCounter实现IHuffConstants、ICharCounter{ 私有静态映射表; CharCounter(){ table=newhashmap(); } /** *通过计算流中的位/块来初始化状态 *@param stream是数据源 *@返回所有块的计数/读取 *@读取失败时引发IOException */ @凌驾 公共int co

我试图将每个字符(作为int)及其计数放入Hashmap中。 但是,当我打印地图时,值总是空的。 有人能帮我找出我的代码出了什么问题吗

公共类CharCounter实现IHuffConstants、ICharCounter{
私有静态映射表;
CharCounter(){
table=newhashmap();
}
/**
*通过计算流中的位/块来初始化状态
*@param stream是数据源
*@返回所有块的计数/读取
*@读取失败时引发IOException
*/
@凌驾
公共int countAll(InputStream流)引发IOException{
ByteArrayOutputStream缓冲区=新建ByteArrayOutputStream();
国际nRead;
字节[]数据=新字节[16384];
while((nRead=stream.read(data,0,data.length))!=-1){
写入(数据,0,nRead);
}
字节[]结果=缓冲区。toByteArray();

对于(int i=0;除了“我的代码出了什么问题?”请详细说明问题所在,告诉我们代码试图做什么,并说明您迄今为止试图解决问题的方法。我注意到,在检索以前的结果时,您没有强制转换为
int
。在Java中,装箱到字节和装箱到int可能会产生不同的结果。请尝试:
table.getOrDefault((int)结果[i],0)
另外,检索和打印时使用相同的注释:
System.out.println(结果[i]+”,“+table.get(结果[i]);
可能需要是…
System.out.println(结果[i]+”,“+table.get((int)结果[i]))
@TimBiegeleisen这个问题非常清楚。伊莱恩解释了她想要实现的目标,向我们展示了一些代码,并向我们展示了(不正确的)输出是。她想知道代码出了什么问题,这使得输出与她想要的不同。我不知道她怎么能把它说得更清楚。另外,使表为静态并在构造函数中初始化它的组合真的很糟糕。除了“我的代码出了什么问题?”之外,我在这里没有看到一个明确的问题陈述请详细说明问题所在,告诉我们代码试图做什么,并说明您迄今为止试图解决问题的方法。我注意到,在检索以前的结果时,您没有强制转换为
int
。在Java中,装箱到字节和装箱到int可能会产生不同的结果。请尝试:
table.getOrDefault((int)结果[i],0)
另外,检索和打印时使用相同的注释:
System.out.println(结果[i]+”,“+table.get(结果[i]);
可能需要是…
System.out.println(结果[i]+”,“+table.get((int)结果[i]))
@TimBiegeleisen这个问题非常清楚。伊莱恩解释了她想要实现的目标,向我们展示了一些代码,并向我们展示了(不正确的)输出是。她想知道代码出了什么问题,这使得输出与她想要的有所不同。我不明白她怎么能把它说得更清楚。另外,使表为静态和在构造函数中初始化它的组合真的很糟糕。
116,null
101,null
115,null
116,null
115,null
116,null
114,null
105,null
110,null
103,null