首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用hashcode()模数组的长度返回空指针异常

使用hashcode()模数组的长度返回空指针异常
EN

Stack Overflow用户
提问于 2012-05-06 21:19:50
回答 1查看 838关注 0票数 0

我尝试使用字符串的哈希码和数组的模数长度来获得哈希表的存储位置的索引。下面是我认为我搞砸了的地方:

数组声明和构造函数:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private Bucket[] list;

public Hash() {
    list = new Bucket[8];
}

以及实际的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//if such a key exists already, you should replace its value
public void insert(String key, Textbook value) {
    rehash();
    if(list[key.hashCode()%list.length].insert(key, value)) size++;
}

//checks if the key exists
public boolean contains(String key) {
    return (list[key.hashCode()%list.length] != null) ? list[key.hashCode()%list.length].contains(key) : false;
}

public void remove(String key) {
    if(list[key.hashCode()%list.length].remove(key)) size --;
}

insert和remove返回null指针,contains方法返回false。

我做错了什么。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-06 21:23:20

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 list = new Bucket[8];

不分配任何Bucket对象,它只分配一个充满null值的数组。

因此,list[key.hashCode()%list.length] == null (解释了为什么contains()返回nulllist[key.hashCode()%list.length].remove(...)list[key.hashCode()%list.length].insert(...)导致您尝试访问null,这反过来会导致NPE)。

您还必须迭代数组,并使用Bucket的构造函数或某些工厂方法初始化每个具有非空值的元素。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10474401

复制
相关文章
Pycharm 修改自动格式化时每行的字数
image.png
马哥Python
2019/06/28
1K0
Pycharm 修改自动格式化时每行的字数
UITextView字数限制
经常做,经常忘,记下来,以后好直接拷贝。 开始使用如下方法做限制 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if ([text isEqualToString:@""] && range.length > 0) { //删除字符肯定是安全的 return YES; }
王大锤
2018/07/04
2.7K0
UITextView字数限制
经常做,经常忘,记下来,以后好直接拷贝。 开始使用如下方法做限制 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if ([text isEqualToString:@""] && range.length > 0) { //删除字符肯定是安全的 return YES; }
王大锤
2018/05/17
2.4K0
Typecho文章字数计算
炒鸡简单的,只需要在当前使用的主题的根目录的functions.php插入如下代码
折影轻梦
2021/08/11
9930
php怎么统计文章字数?
PHP中如何正确统计中文字数?PHP中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_strwidth 这个三个函数去测试统计字符串的长度,看看把中文算成几个字节: echo strlen("二货ABC") . ""; # 输出 9 echo mb_strlen("二货ABC", 'UTF-8') . ""; # 输出 5 echo mb_strwidth("二货ABC") . ""; #输出 7 从上面的测试,我们可以看出:strlen 把中文字
雨尘
2018/07/17
3.2K0
统计字数oninput?keyup?onchange?
当元素的值发生改变时,会触发change事件。该事件仅适用于<input>, <select>和<textarea> 元素。当用于<select>元素时,change 事件会在选择某个选项时发生。当用于<input>或<textarea>时,该事件会在元素失去焦点时发生。
奋飛
2019/08/15
2.7K0
php怎么统计文章字数?
PHP中如何正确统计中文字数?PHP中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_strwidth 这个三个函数去测试统计字符串的长度,看看把中文算成几个字节:
墨渊
2018/05/09
4.8K5
Discourse 主题字数限制
你可以在 Discourse 的后台设置中搜索 min topic title length 关键字。
HoneyMoose
2020/05/20
1.1K0
Discourse 主题字数限制
每行字符数(CPL)的起源
前几天,我收到网友小龙的Email。 他想与我讨论一个问题: "各种计算机语言的编码风格,有的建议源码每行的字符数(characters per line)不超过72个,还有的建议不超过80个,这是
ruanyf
2018/04/12
1.2K0
每行字符数(CPL)的起源
python模拟sed在每行添加##
     我们在平常的工作中有时候需要对摸一个文件进行操作,比如在一个文件的每行前面添加##之类的,在shell中这个需求很简单,用sed单行就能搞定,下面我们来看看一个文件:
py3study
2020/01/06
9210
php怎么统计文章字数?
PHP中如何正确统计中文字数?PHP中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_strwidth 这个三个函数去测试统计字符串的长度,看看把中文算成几个字节: echo strlen("二货ABC") . ""; # 输出 9 echo mb_strlen("二货ABC", 'UTF-8') . ""; # 输出 5 echo mb_strwidth("二货ABC") . ""; #输出 7 从上面的测试,我们可以看出:strlen 把中文
用户1456630
2018/05/25
2.5K0
iOS lable多行取每行字符串
最近项目需要从lable的中去每行添加换行符,在网上找了一些资料,总结了一下怎么处理这个问题。
菜菜不吃蔡
2018/08/03
1.2K0
js对数字数组排序[通俗易懂]
js中经常需要用到对数组进行排序的操作,当数组中的元素均为数字时,直接使用sort()进行排序得到的结果可能不是你想要的结果。
全栈程序员站长
2022/08/28
3.4K0
Salesforce lightning datatable 每行表示Link项目
使用LightningDatatable做成的ListView时,有时需要自定义Link项目,例如需要Link式的行删除事件,当点击消除Link时,消除当前行数据,如下
repick
2022/05/20
6080
Salesforce lightning datatable 每行表示Link项目
zblogPHP文章摘要字数说明
相信很多做网站朋友都知道,在SEO方便,每个页面的关键词和描述最好都是提取文章的关键词和摘要,而有的人喜欢直接用调用文章的字数,有些人喜欢调用摘要内容的字数限制,今天就把这两种方法都交给大家,根据自己习惯去使用,因为有些网站是以图片形式发布的,但是如果以文章内容调用的话很可能是图片,所以摘要的字数显示就有用处了,教程如下:
李洋博客
2021/06/15
7550
zblogPHP文章摘要字数说明
Vue文字数组向上翻动
<template> <div class="marquee" @mouseenter="enterMar()" @mouseleave="leaveMar()"> <div :class="{ 'marquee-up': isUp }"> <p class="marquee-text" v-for="(item, index) in dataList" :key="index"> {{ item }} </p> </div> </div> <
明知山
2021/04/15
8150
读取文档数据的各列的每行中
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/117322.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/06
2K0
你的每行代码值多少钱?
我知道,“line of code”(LoC)是一种非常愚蠢的计量方式。不要急着喷我,请大家先听我讲讲我最近参与的两个项目,看一下一些非常有意思的数字。
哲洛不闹
2018/09/18
1.6K0
你的每行代码值多少钱?
typecho统计博客所有文章的字数
腾云先锋(TDP,Tencent Cloud Developer Pioneer)是腾讯云 GTS 官方组建并运营的技术开发者群体。这里有最专业的开发者&客户,能与产品人员亲密接触,专有的问题&需求反馈渠道,有一群志同道合的兄弟姐妹。来加入属于我们开发者的社群吧 。
小唐同学.
2023/01/06
1.4K1
Typecho文章字数统计插件WordCount
WordCount插件是一款默认编辑器增强Typecho插件,插件的功能是实时计算文章内容的文字数量、字符数量,包括文字、标点符号、英文字母、阿拉伯数字和标签。计算方式是 字数等于文字数量加数字数量;文字字数包含中文数量;字母数量等于大小写字母;数字即0-9;标签数量即文章标签的数量。
小唐同学.
2022/02/18
2.8K2
Typecho文章字数统计插件WordCount

相似问题

查找每行的字数

20

每行打印随机字数

10

统计每行的字数

18

每行字数(WPL)图像处理

10

脚本中每行的字数

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文