Поскольку в любом массиве массив является ссылочным типом, а отдельные элементы массива - это тип значения ... это также случай с массивом строк?В массиве строк C# отдельные элементы массива являются ссылочным типом или типом значения?
ответ
System.String
является ссылочным типом.
отдельными элементами в массиве ... например, например, в string [] str = {"the", "hero"} и герой являются ссылочными или значениями? –
@SanaZehra, они являются тем, что является базовым типом элемента. В массиве 'int' тип элемента представляет собой тип значения В массиве, например 'string', они являются ссылочными типами. –
Массивы - not типы значений. И нет причин, по которым их содержимое должно быть типом значений, если, конечно, они не являются, по сути, типами значений. (например, int
).
int[] intArray; // intArray is a reference type. It holds ints, a value type
string[] stringArray; // stringArray is a reference type. It holds strings, a reference type
EDIT Специфическая цитата из указанной страницы о типе массива:
типов массивов являются ссылочными типами, производными от абстрактного базового типа Array. Поскольку этот тип реализует IEnumerable и IEnumerable, вы можете использовать foreach-итерацию во всех массивах на C#.
поэтому массив объектов в основном ... содержит объекты (ссылки на объекты), следовательно, массив объектов и содержимое такого массива являются ссылочными типами справа ??? ... –
@SanaZehra, массив является ссылочным типом, периодом. Это не меняется. Что * * * изменяется, является ли тип элемента (то, что содержит массив), это ссылочный тип или тип значения. Это * полностью * зависит от типа, о котором идет речь. Следовательно, элементы массива 'int' являются типами значений, в то время как элементы массива' string' являются ссылочными типами. –
Элементы в массиве являются значениями, но они могут быть либо типом значения, либо ссылочным типом.
Для массива типов значений само значение сохраняется в массиве.
Для массива ссылочных типов ссылки на объекты хранятся в массиве.
Итак, массив строк на самом деле представляет собой массив ссылок на строки.
отдельные элементы массива являются тип значения
Неправильный. Тип базового элемента массива может быть либо ценным, либо ссылочным.
string (C# Reference) - Это ссылочный тип и в случае массива.
Тип строки представляет собой последовательность из нуля или более символов Unicode. string - это псевдоним для String в .NET Framework.
оператор [] может быть использована только для чтения доступа к отдельным символам строки:
string str = "test";
char x = str[2]; // x = 's';
строковые литералы имеют тип строки и могут быть записаны в двух формах, цитируются и @ -quoted. Цитируемые строковые литералы заключаются в двойные кавычки (") и отдельные элементы массива типа значения„- это ошибка
проверки документации ссылка MSDN для получения подробной информации об этом
- 1. Is Guid считается типом значения или ссылочным типом?
- 2. Является ли объект ссылочным типом или типом значения?
- 3. Является ли Static Class ссылочным типом или типом значения?
- 4. Разница между ссылочным типом и типом объекта?
- 5. Почему примитивы не являются ссылочным типом?
- 6. Может ли тип быть ссылочным типом и типом значения одновременно?
- 7. Строка является ссылочным типом
- 8. Пустой финал с ссылочным типом
- 9. Как узнать, какой тип является ссылочным типом или типом значения в Visual Studio
- 10. Является ли C# динамическим POD значением или ссылочным типом?
- 11. C++ - экземпляр шаблона со ссылочным типом
- 12. Являются ли переменные объекта javascript только ссылочным типом?
- 13. Является статическим булевым ссылочным типом в Swift?
- 14. Является ли массив аргументом в c действительно ссылочным типом?
- 15. Создание объекта с другим ссылочным типом и типом экземпляра
- 16. Разница между указателем в C++ и ссылочным типом в C#
- 17. Как целочисленный массив может быть ссылочным типом?
- 18. путаница со значением типа и ссылочным типом в C#
- 19. Как будет храниться объект с типом значения и ссылочным типом в .NET?
- 20. Ошибка: тип «TEntity» должен быть ссылочным типом
- 21. jdt: Проверьте, является ли IField ссылочным типом
- 22. Действительно запутано между объектом и ссылочным типом
- 23. Необязательный параметр должен быть ссылочным типом
- 24. Как сделать выражение типа выражения ссылочным типом?
- 25. Является ли ссылочным типом в C++ тип POD?
- 26. В чем разница между ссылочным типом и ссылкой на C#?
- 27. Как узнать, что-то является структурой (тип значения) или классом (ссылочным типом) в C#
- 28. Необязательный параметр должен быть ссылочным типом, нулевым типом или быть объявлен как необязательный
- 29. Конфликт в том, что объект является ссылочным типом
- 30. Является ли «корневым типом» или просто типом?
.“; Элементы объекта' int [] 'являются типами значений (' int'), но элементы 'string []' являются ссылочными типами ('string') –