Objeto de ordenación de Java por propiedad de tipo de lista

Tengo los siguientes objetos:

public class Shipping {
    String name;
    List<Method> methods;
}

public class Method {
    String serviceType;
    String cost;
}

Yo tengo:

List<Shipping> shippings;

Me gustaría ordenar el envío por el método que devolvió el costo más barato.

Ejemplo:

shipping: "Josh" with 2 methods: "Premium","5" and "Basic","3"
shopping: "Nash" with 2 methods: "Prem", "7" and "Base","2"

lo ordenará así:

shopping: "Nash" with 2 methods: "Base","2" and "Prem", "7"
shopping: "Josh" with 2 methods: "Basic","3" and "Premium","5"

Lo necesito para devolver el método que tiene el costo del método más barato como el primero, mientras que también clasifico los métodos para tener el más barato primero.

¿Cuál es la mejor manera de hacerlo? Estoy usando Java 8 si tiene una mejor solución y tengoguava biblioteca

EDITAR: El costo es un número flotante. Necesito dejarlo como String ya que es un objeto que paso a la API REST y no me gustaría que el lado del cliente lo analice.

Respuestas a la pregunta(5)

Su respuesta a la pregunta