A function $f$ is concave on $[a,b]$ if $$f((1-\lambda)a+\lambda b) \ge (1-\lambda)f(a) + \lambda f(b),\quad \forall \lambda\in[0,1]$$ and similarly $f$ is convex if $$f((1-\lambda)a+\lambda b) \le (1-\lambda)f(a) + \lambda f(b),\quad \forall \lambda\in[0,1]$$
Then it's clear that $f$ is concave and convex if $$f((1-\lambda)a+\lambda b) = (1-\lambda)f(a) + \lambda f(b),\quad \forall \lambda\in[0,1]$$
But then I'm told that this is equivalent to $f$ being affine. That is that $f(x) = \alpha + \beta x$ for some constants $\alpha, \beta$. How can I prove this from the above?
All I'm getting by setting $(1-\lambda)a+\lambda b=x$ in the equation above is $$f(x) = (1-\lambda)f(\frac{x-\lambda b}{1-\lambda})+\lambda f(\frac{x-(1-\lambda a)}{\lambda})$$ which I don't seem to be able to get into the form $\alpha +\beta x$.