Creating String from a bitmask
Current approach

You can determine the exact count of days in the mask beforehand -> you can use a better initial size than 7 for the array list (or directly an array as the size is fixed).
You don't have to sort the list (and thus don't need the comparator), rotating based on the firstDayOfTheWeek is sufficient as the order of the days does not change.
While this is very ugly: You could replace the new ArrayList&lt;&gt;(dayList.size()) with (List&lt;String&gt;)(List&lt;?&gt;)dayList.

Regarding your edit: This seems like a very bad idea if you ever want to make your app multithreaded.

Alternative implementation

You can avoid rotating the resulting list if you start interpreting the mask at the provided firstDayOfWeek instead of Monday.

public static final int MONDAY    = 0x01;
public static final int TUESDAY   = 0x02;
public static final int WEDNESDAY = 0x04;
public static final int THURSDAY  = 0x08;
public static final int FRIDAY    = 0x10;
public static final int SATURDAY  = 0x20;
public static final int SUNDAY    = 0x40;

public static String maskToString(int mask, int firstDayOfWeek) {
    assert (mask &amp; ~127 | firstDayOfWeek &amp; ~127
            | firstDayOfWeek &amp; firstDayOfWeek - 1) == 0;
    String[] values = new String[bitCount(mask)];
    int i = 0, d = firstDayOfWeek;
    do {
        if ((mask &amp; d) != 0)
            values[i++] = dayToString(d);
    } while ((d = d &lt;&lt; 1 &amp; 127 | d &gt;&gt; 6) != firstDayOfWeek);
    return Strings.join(" ", values, true);
}


Which gives the following result:

maskToString(MONDAY, MONDAY);                              // Mon
maskToString(TUESDAY | THURSDAY | SATURDAY, MONDAY);       // Tue Thu Sat
maskToString(TUESDAY | THURSDAY | SATURDAY, SUNDAY);       // Tue Thu Sat
maskToString(TUESDAY | THURSDAY | SUNDAY, MONDAY);         // Tue Thu Sun
maskToString(TUESDAY | THURSDAY | SUNDAY, SUNDAY);         // Sun Tue Thu
maskToString(127, MONDAY);      // Mon Tue Wed Thu Fri Sat Sun
maskToString(127, SUNDAY);      // Sun Mon Tue Wed Thu Fri Sat
maskToString(127, WEDNESDAY);   // Wed Thu Fri Sat Sun Mon Tue