pinyin4j速度缓慢解决方案

转载请标注:
披萨大叔的博客 http://blog.csdn.net/qq_27258799/article/details/51372052
如果您觉得这篇文章对您有帮助,请点下文章最下面的赞~

楼主最近在项目中使用了网上的一个带首字母索引的ListView,发现每次ListView数据初始化的速度奇慢,如果是调试模式下,简直是等到天荒地老。于是用Traceview分析了下中间的过程,不会用Traceview的,传送门在此:Android性能分析工具Traceview的使用

使用pinyin4j时,它内部要先初始化,第一次初始化大约花费2秒。然后就去网上搜了搜有没有替代方案,最后发现了TinyPinYin库,一共只有5个文件:

这里写图片描述

我们对比下这两个库:

大小功能初始化速度
pinyin4j200Kb左右处理声调、方言、多音字~2000ms
TinyPinyin90K左右生成的拼音不包含声调,也不处理多音字,默认一个汉字对应一个拼音无需初始化,稳定调用

而楼主的情况,只是简单的取首字母进行排序,所以很明显,用TinyPinyin更好,最后使用的效果也和预期一致。

总结:如果我们只是用作首字母排序,那用pinyin4j简直是用大炮轰蚊子,TinyPinyin才是更好的选择。
最后放上楼主用Eclipse打好的jar包:
TinyPinyin.jar

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值