It won't matter in both cases
When you're creating string attribute as array it will always going to be an array.
That means that the default value would be [] so the value will be filled in any case.
The reason that the Required field become gray it's just to let you know that there is no use to declare it as required.
If you will look here in the Utopia-php database module (this is what Appwrite uses for DB)
https://github.com/utopia-php/database/blob/main/src/Database/Database.php#L776
You will find the attribute creation code
$attribute = $this->adapter->createAttribute($collection->getId(), $id, $type, $size, $signed, $array);
And in Appwrite it uses the MariaDB adapter
https://github.com/utopia-php/database/blob/main/src/Database/Adapter/MariaDB.php#L173
return $this->getPDO()
->prepare("ALTER TABLE {$this->getSQLTable($name)} ADD COLUMN `{$id}` {$type};")
->execute();
And you can see that the field is going to be created with out any requirements or no null statements