影院行信息有时用字母存储,解决方法

例如:

  • 百度的实时座位接口,返回的row标志,可能是字母或者数字

需求:

  • 数据库存储的都是用数字来表示

解决:

    if (!NumberUtils.isNumber(rowNo)) {
        for (byte byt : rowNo.getBytes()) {
            rowNoTemp = byt - 64;
        }
    } else {
        rowNoTemp = Integer.parseInt(rowNo);
    }
  • 先使用NumberUtils判断不是数字的row标志
  • 将字母转换成byte[]数组,数组中存放的字母,可以转换为二进制表示
  • 对照ASCII表
    1:00000001
    A:10000001
  • 对应减去64,可正常转化

你可能感兴趣的:(影院行信息有时用字母存储,解决方法)