你怎么得出Length为负数的结论的呢?或者你把调试过程贴出来看看呢
private static StringBuilder sb = new StringBuilder(); public static String getIpStringFromBytes(byte[] ip) { sb.delete(0, sb.length()); //报java.lang.ArrayIndexOutOfBoundsException: -13 sb.append(ip[0] & 0xFF); sb.append('.'); sb.append(ip[1] & 0xFF); sb.append('.'); sb.append(ip[2] & 0xFF); sb.append('.'); sb.append(ip[3] & 0xFF); return sb.toString(); }
@ycty: java.lang.ArrayIndexOutOfBoundsException: -13
这个的意思不是length=-13啊
都已经报错了,怎么可能是对的呢?
但报的是
sb.length()=-13,我现在想问什么情况下,会出现
人家给你抛出的异常说是sb.length()=-13吗?那是人家自定义的状态码吧?你加断点到那一句上面,然后命中断点的时候看看sb的长度。