Java (J2SE) does not support read-only collections that are evaluated at compile time.
This project provides it.
var source = new ArrayList<String>();
ReadOnlyList<String> readonlySource = ReadOnly.of(source);
<dependency>
<groupId>io.github.readonlycoll</groupId>
<artifactId>readonlycoll</artifactId>
<version>1.1.0</version>
</dependency>
implementation 'io.github.readonlycoll:readonlycoll:1.1.0'