java推断是不是是数组的要领:
一、运用instanceof推断是不是为数组
instanceof 是 Java 的一个二元操作符,类似于 ==,>,< 等操作符。
instanceof 是 Java 的保存关键字。它的作用是测试它左侧的对象是不是是它右侧的类的实例,返回 boolean 的数据范例。
public List findByProperty(String propertyName, Object value) { List list = new ArrayList(); String queryString = "from Userinfo as model where model." + propertyName + "= ? order by model.userInfoId DESC"; try { // //推断是不是为String数组范例 if ( value instanceof String[] ){ //假如为true则强转成String数组 String [] arr = ( String[] ) value ; for ( int i = 0 ; i < arr.length ; i++ ){ this.getHibernateTemplate().find(queryString, value); list.add(this.getHibernateTemplate().find(queryString, arr[i])); } }else{ list = this.getHibernateTemplate().find(queryString, value); } } catch (RuntimeException re) { log.error("find by property name failed", re); throw re; } return list; }
二、运用getClass()
getClass()可以取得对象的范例,依据取得的对象范例,推断是不是为Array数组
/** * 对象是不是为数组对象 * * @param obj 对象 * @return 是不是为数组对象,假如为{@code null} 返回false */ public static boolean isArray(Object obj) { if (null == obj) { // throw new NullPointerException("Object check for isArray is null"); return false; } // 反射 取得范例 return obj.getClass().isArray(); }
更多java学问请关注java基础教程。
以上就是java中推断是不是为数组的细致内容,更多请关注ki4网别的相干文章!