将一个可遍历的对象中的数据拼接为可用于sql中进行in查询的字符串
当前方法还无法进行数组遍历
/** * 组件:拼接参数 * 拼接好的样式为:(1,2,3....) * @param t 包含参数的列表 * @param <T>实现Iterable的接口的类型 * @return 拼接好的字符串 */ protected <T extends Iterable> String joinParameter(T t){ //参数判空 if(t == null){ return null; }else { //参数字符串暂存区 StringBuffer tempBuffer = new StringBuffer('('); //使用迭代器遍历列表 Iterator iterator = t.iterator(); //用于定位的索引 int count = 0; while (iterator.hasNext()) { Object obj = iterator.next(); //判断是否需要增加‘,’ if (count > 0) { tempBuffer.append(','); } //根据不同的类型进行拼接字符串 if (obj instanceof String) { try { tempBuffer.append('\'').append(URLEncoder.encode(obj.toString(), "UTF-8")).append('\''); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } else if (obj instanceof Number) { tempBuffer.append(obj); } //索引+1 count++; } //拼接结束符 tempBuffer.append(')'); //返回字符串 return tempBuffer.toString(); } }