"".indexOf()的作用,以及结果标识 1(不限于1,而是发现的字符的起始位,从0开始)、0、-1
在实际编程的过程中,总是无法避免和String类型的反参打交道,但是这个String类型的数据并不是中止,而是需要做进一步的转化比如转化为xml对象或者json类型的对象。
但是返回的String类型的字符串有时并不是我们预想的字符串,或许是网络故障,或者是我们的请求没有获取正确的响应而返回了一个表示错误信息的String类型的串。
在这种情况下,我们就需要先对结果做出判断。
先提出几个实例:
·String str1=“{I am ok:1234}”.indexOf("123");
str1=9;
·String str1=“1234}”.indexOf("123");
str1=0;
·String str2=“{I am ok:1234}”.indexOf("");
str1=0;
·String str3=“{I am ok:1234}”.indexOf("12345");
str1=-1;
上面的3个结果说明,对字符串使用indexOf()方法可以有3种使用效果
第一种是被比较的字符串具有比较的字符串,所得结果返回为 1或者0,这是返回的存在这个字符串的起始位置第0位开始,或者第1位开始出现这个字符串
第二种是和空字符串比较,返回的是0,如果使用空字符串和空字符串做比较,返回的还是0
第三种是和一个不存在的字符串做比较,返回的是-1
如果说,我们已经可以预知两种结果中的特殊标志位,就是返回的string中要么有 "right",要么就是"false",这样的字段,那可显然,可以直接让string的串和right来一个indexOf("right"),如果返回为0或者大于0的整数,说明返回的是正确的结果,否则,也就是等于 -1 时,就是错误的string串了,当然,使用表示"false"字段的比较也是可以的。