First of all, I'll assume that this is an exercise, as java.math.BigInteger already provides most of the functionality that is specified. It is also backed by specialized native code in most Java VM's.
The class is not designed with performance in mind. Using decimals in a linked list instead of an array of 32-bit integers or 64-bit longs is alsoeasy to debug, but it is far less performant than using e. The only advantage couldg. longs within an array. There are also many mathematical schemes that can be studied to avoid memory copiesspeed up the calculations such as Java BigInteger classesKaratsuba addition & (but then you'd have to perform calculations on the same instancemultiplication, rather than returning a new one Newton-Raphson division etc. BigInteger even mixes approaches depending on integer size as is done now)more involved tricks may have a relatively large initial overhead. UsingIn reality the decimal calculation style is also fully unnecessary, computer use bytes and words of various sizes. Thiscode is doubly true because this just seems to be an implementation detail - the inner calculations arelikely not exposed to the usereven used as most Java VM's will replace it with CPU-specific instructions.
Of course,Instead of implementing a list yourself LinkedList and other methods do already exist as well, and for specialized instructions itcould have been used. It however makes more much more sense to use arrays as they offer faster random access, which may be needed to implement the mathematical schemes mentioned earlier. I'm therefore assuming that creating the linked list yourself was part of an assignment.
The implementation itself seems fine if it is just to show that you can implement high school math using a computer application.