import org.apache.commons.math3.analysis.ParametricUnivariateFunction;
import org.apache.commons.math3.analysis.interpolation.SplineInterpolator;
import org.apache.commons.math3.analysis.interpolation.UnivariateInterpolator;
import org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction;
UnivariateInterpolator interpolator = new SplineInterpolator();
double[] x = {1.0, 2.0, 3.0, 4.0, 5.0};
double[] y = {2.0, 4.0, 1.0, 3.0, 5.0};
PolynomialSplineFunction spline = interpolator.interpolate(x, y);
double result = spline.value(3.5);
System.out.println(result);