Не имеет значения, передано ли целое число по значению или по ссылке. Нет целочисленных методов, которые изменяют объект. Строки определенно передаются по ссылке в том смысле, что они не копируются. Но вы не можете изменить их. И для любого объекта код, который вы написали, не изменит оригинал. Например.
void main() {
Map d = {};
change(d);
print(d);
}
void change(Map x){
x={};
}