在java里,当对从数据库里取到的数据进行校验时,有可能数据里包含有乱码,这时还没校验,在取数时程序就已经抛出了异常。
一般的想法是找出产生乱码的原因,但大部分这个原因不好找。于是就可以退而求其次,我们可以捕获有乱码的记录,作特殊的处理,例如置空,而正常的记录则继续参与校验。对于没有深入了解Java的人会认为,某条记录有乱码时抛出异常,然后整个函数也就终止了,后面的记录也就无法继续参与校验。其实不然,catch到错误并意味着程序的终止。只不过一般人喜欢简单化,把一大堆代码放到try里,然后最后加个catch。这样做程序肯定会终止。因为catch里的代码执行完毕后函数也就结束了。换句话说,即使catch到错误,catch后面的代码也可以正常执行。我们要校验乱码的话,一般用到循环,在循环里我们只要在可能出现乱码的字段加个try,然后catch到后处理一下就ok,这样循环会继续执行。如果不放心,可以再在循环外层加个try catch。