Here you can find the source of coerce(Object val, Class clz)
public static Object coerce(Object val, Class clz)
//package com.java2s; /*/*from ww w. j a va2 s.c o m*/ * Copyright (c) 2016 Vivid Solutions. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Eclipse Distribution License v. 1.0 which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * * http://www.eclipse.org/org/documents/edl-v10.php. */ public class Main { public static Object coerce(Object val, Class clz) { if (val == null) return val; if (val.getClass() == clz) return val; if (val instanceof String && (clz == Double.class || clz == double.class)) return convertDouble((String) val); if (val instanceof String && (clz == Integer.class || clz == int.class)) return convertInteger((String) val); return val; } public static Double convertDouble(String str) { double val = 0; try { val = Double.parseDouble(str); } catch (NumberFormatException ex) { } return new Double(val); } public static Integer convertInteger(String str) { int val = 0; try { val = Integer.parseInt(str); } catch (NumberFormatException ex) { } return new Integer(val); } }