For on off switching, the maximum collector current spec on data
sheets is a poor guide, except that it is way too high.
http://www.fairchildsemi.com/ds/TI/TIP31C.pdf#search="tip31"
Lists the maximum DC collector current at 3 amps.
For low voltage drop switching I usually look for a transistor with a
gain at the load current that is at least half the peak gain shown on
the DC current gain curve, at some low DC collector voltage.
The above data sheet indicates that this half peak gain current (with
4 volts collector to emitter, on page 2) is about 1.5 amps.
I also check the saturation voltage curves for a forced gain of 10 and
make sure that the maximum voltage drop is below about 200 mV. This
is about 1.2 amps for TIP31. So, though it has a higher current
capability than you need, it is not grossly oversize, unless fast
switching is also important, because the over sized die has more
capacitance and stored charge than necessary.
Taking a look at 2N4401,
http://www.fairchildsemi.com/ds/2N/2N4401.pdf#search="2n4401"
with a maximum collector current rating of 800 mA,
But the gain curve falls to half its peak value at about 450 mA (with
5 volts collector to emitter).
Checking the saturation voltage, it is about 300 mA for a saturation
voltage of .2 V and a forced gain of 10 (with 30 mA of base current).
If you can spare this much base current, this transistor is just about
as small as you can go for a saturated load of 400 mA, with a
reasonable base drive and saturation voltage.
A really fine saturated switch for this sort of current would be one
of the high gain, low saturation voltage devices from Zetex. You
haven't mentioned the off state voltage the transistor must withstand,
but assuming 40 volts, take a look at ZTX1051A (Digikey sells these,
but they cost as much as the TIP31).
http://www.zetex.com/3.0/pdf/ZTX1051A.pdf
Half peak current gain is about 5 amps and the gain is still over 200.
The saturation voltage at 400 mA is only about .05 volts with a
forced gain of 100 (4 mA of base current). All this in a tiny to-92
package.
I love this line.