public static <T> T toBean(Reader jsonReader, TypeReference<T> valueTypeRef) {
    """
	Json string to java bean <br>
	<p>
	List,Array,Map
	</p>
	<pre>
	clazz= new TypeReference&lt;List&lt;MyBean&gt;&gt;(){};
	
	e.g:
	toBean(jsonReader,new TypeReference&lt;List&lt;MyBean&gt;&gt;(){})
	
	toBean(jsonReader, MyBean[])
	
	toBean(jsonReader, new TypeReference&lt;Map&lt;String, Map&lt;String, MyBean&gt;&gt;(){})
	</pre>
	
	@param jsonReader json reader
	@param valueTypeRef value type ref
	@param <T> t
	@return bean
    """
		if (valueTypeRef == null || jsonReader == null)
			return null;
		return toBean(new MyJsonParser(jsonReader), valueTypeRef);

	}
public static <T> T toBean(Reader jsonReader, TypeReference<T> valueTypeRef) {
		if (valueTypeRef == null || jsonReader == null)
			return null;
		return toBean(new MyJsonParser(jsonReader), valueTypeRef);

	}
public static < T > T toBean ( Reader jsonReader , TypeReference < T > valueTypeRef ) { if ( valueTypeRef == null || jsonReader == null ) return null ; return toBean ( new MyJsonParser ( jsonReader ) , valueTypeRef ) ; }
Json string to java bean <br>
<p>
List,Array,Map
</p>
<pre>
clazz= new TypeReference&lt;List&lt;MyBean&gt;&gt;(){};

e.g:
toBean(jsonReader,new TypeReference&lt;List&lt;MyBean&gt;&gt;(){})

toBean(jsonReader, MyBean[])

toBean(jsonReader, new TypeReference&lt;Map&lt;String, Map&lt;String, MyBean&gt;&gt;(){})
</pre>

@param jsonReader json reader
@param valueTypeRef value type ref
@param <T> t
@return bean
Json string to java bean <br > <p > List Array Map < / p > <pre > clazz = new TypeReference&lt ; List&lt ; MyBean&gt ; &gt ; () {} ;