Print all path from root to leaves - code review request
It looks good overall.

I see you have taken my previous suggestion to rearrange the TreeNode constructor arguments.  Now you have to readjust your calling convention accordingly.

Your create() method acts like a constructor, so you should just make it a constructor.  It desperately needs a JavaDoc comment explaining how the input array is to be interpreted.

In create(), I would not bother to check for arr == null.  You'll get a NullPointerException anyway when you fetch arr[0].  It's only worth the explicit check if such a check would make debugging substantially easier, i.e. when an improper null would get stored or propagated but not dereferenced until much later.  Even then, I'd throw an IllegalArgumentException rather than NullPointerException to emphasize that the caller is at fault.

In doPrint(), path.remove(path.size() - 1) should be just path.removeLast().