电话拨号盘T9搜索原理

电话拨号键输入数字能搜索出相关的电话号码以及联系人名字,其中名字看起来又还能按中英文搜索,其实本质上都是按数字在进行对比。

如将字母转换成数字方法:

public char getNumFromAlpha(charalpha) {
   switch (alpha){
   case 'a':
   case 'b':
   case 'c':
   case 'A':
   case 'B':
   case 'C':
      return '2';
   case 'd':
   case 'e':
   case 'f':
   case 'D':
   case 'E':
   case 'F':
      return '3';
   case 'g':
   case 'h':
   case 'i':
   case 'G':
   case 'H':
   case 'I':
      return '4';
   case 'j':
   case 'k':
   case 'l':
   case 'J':
   case 'K':
   case 'L':
      return '5';
   case 'm':
   case 'n':
   case 'o':
   case 'M':
   case 'N':
   case 'O':
      return '6';
   case 'p':
   case 'q':
   case 'r':
   case 's':
   case 'P':
   case 'Q':
   case 'R':
   case 'S':
      return '7';
   case 't':
   case 'u':
   case 'v':
   case 'T':
   case 'U':
   case 'V':
      return '8';
   case 'w':
   case 'x':
   case 'y':
   case 'z':
   case 'W':
   case 'X':
   case 'Y':
   case 'Z':
      return '9';
   default:
      return alpha;
   }
}

通过以上方法能很直观的看到所有字母都有对应的一个数字,如果是汉字通过拼音转换包转换成拼音,然后再通过字母转换成数字,最后就可以用数字来进行比对搜索了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值