已采纳回答 / 不为我蓝
不是啊,它做了判断,当qName.equals("name")时,才执行boot.seiName(),value已经是对应书名了因为handler的执行顺序是这样的,startElement 方法,然乎characters方法,在endElement方法,而判断在enElement处,也就是说,来到判断语句之前,value在characters方法已经获取了相应的值了。<...图片...>value已经获取到值了,下面的判断,,肯定有值。
2016-02-23
最赞回答 / 不为我蓝
我记得昨晚回答了,怎么今天没有了。首先你要明白,handler的执行顺序,先是开始节点,startElement,然后Characters,然后在结束,再Characters方法代码块里,已经将value值赋值了,就是那句value=new String(ch, start, length); 这一句就赋与了相对应的Element的值,也就是说qName等于name时,其实已经自动传入对应的start,length进去了,因为ch是数组嘛。所以在endElement处进行判断如果qName.equals(...
2016-02-23