El componente de Navigation tiene un complemento de Gradle llamado Safe Args que genera clases de objeto y compilador simples que permiten una navegación de tipo seguro y acceso a cualquier argumento asociado. Se recomienda el uso de Safe Args para navegar y pasar datos, ya que garantiza la seguridad de tipo.
En algunos casos, por ejemplo, si no usas Gradle, no puedes usar el complemento Safe Args. En esas situaciones, puedes utilizar Bundles para pasar datos de forma directa.
https://developer.android.com/guide/n...