#c#
#c#
Вопрос:
Простой вопрос: мне нужна только первая буква моей строки. Как мне добиться этого в C#
?.
У меня действительно долгая работа с использованием IF
инструкций, но я уверен, что есть способ просто сократить ее до 1.
В vb.net
казалось, что
string q1s = q1l.Chars(1);
но это не работает в c#
Комментарии:
1. Не могли бы вы показать свой «действительно длинный обходной путь с использованием операторов IF» на C #, пожалуйста? Я могу придумать короткие выражения, использующие одну или две строки, и мне было бы интересно посмотреть, как вы можете использовать более одного
if
оператора для этой цели.2. это делается с помощью if (q1l = «stringname») { string q1s = «d»; } на основе того факта, что я знаю, каким будет содержимое строки.
3. @user3809554: Как это реплицирует какую-либо часть вашего VB.NET выражение?
4. Пожалуйста, избавьте нас от необходимости читать ваши «обходные пути» сейчас и в будущем. Возьмите класс. Возьмите книгу. Прочитайте потрясающее руководство.
Ответ №1:
Строка имеет индексатор. Вы можете получить любой символ из строки, а не только первый:
string s = "Hello world"
char first = s[0];
Затем вы можете вызвать first.toString() если вам действительно нужно, чтобы это была строка.
Ответ №2:
Используйте Substring
метод:
string q1s = q1l.Substring(0, 1);
Ответ №3:
myString[0]
блаблабла, это должно достичь 30 символов в моем ответе.
Комментарии:
1. «Простой вопрос, мне нужна только первая буква моей строки». Это были вопросы, не так ли? Он не говорил, что это должна быть строка типа Steve.
2. Ну, этого не было 3 минуты назад. Включая время, когда вы опубликовали свой «неправильный» ответ.
3. @Steve: На самом деле, пример из вопроса —
string q1s = q1l.Chars(1);
— делает именно это: он извлекает единицуchar
и присваивает ееstring
(вызывая неявное преобразование).Chars
Свойство является VB.NET способ доступа к индексатору и возвращаетchar
.
Ответ №4:
myString[0] вернет 1-й символ в строке.