use tree data structure to avoid inefficient Vector copy
optimize: use StringBuilder

Long continuious Chinese text will cost java lots of time if concat
string using '+='
add test for long text