Каково различие между двойными кавычками и одинарной кавычкой в C#

JSON.parse(jsonString);

json.parse изменится на объект.

61
задан Jon Skeet 2 March 2009 в 11:59
поделиться

4 ответа

Одинарные кавычки кодируют отдельный символ (тип данных char), в то время как двойные кавычки кодируют строку нескольких символов. Различие подобно различию между единственным целым числом и массивом целых чисел.

char c = 'c';
string s = "s"; // String containing a single character.
System.Diagnostics.Debug.Assert(s.Length == 1);
char d = s[0];

int i = 42;
int[] a = new int[] { 42 }; // Array containing a single int.
System.Diagnostics.Debug.Assert(a.Length == 1);
int j = a[0];
135
ответ дан Hosam Aly 7 November 2019 в 13:35
поделиться

Одинарные кавычки вместо двойных?

, Где? Здесь? если (текст [я] == "")

текст [я] даю символ/байт, и это сравнивается с массивом (вероятно, unicoded??) символы/байты. Это не работает хорошо.

Скажите: сравните '1' с 1
или "1" с "один" или (2-1) с "eins", что Вы думаете, корректные ответы, или нет ли так или иначе никакой значимый ответ?

Помимо этого: программа не будет работать очень хорошо с одинарными кавычками или, учитывая пример "words.txt" =

одно слово или 2 слова или больше слов здесь?

0
ответ дан jrEving 7 November 2019 в 13:35
поделиться

Вы ищете пробелы, это может быть сделано как пространство в строке или как символ. Таким образом, по-моему, это работало бы.

(Между прочим, если файл содержит предложения с точками. И кто-то забыл добавлять пространство после того, как точка, слово не будет добавлено к общей сумме слов)

0
ответ дан RvdK 7 November 2019 в 13:35
поделиться

когда Вы говорите, что строка s = "эта строка" тогда s [0] является символом в в определенном индексе в той строке (в этом случае s [0] == 't')

Так для ответа на вопрос, используйте двойные кавычки или одинарные кавычки, можно думать о следующем как о значении того же самого:

string s = " word word";

// check for space as first character using single quotes
if(s[0] == ' ') {
 // do something
}

// check for space using string notation
if(s[0] == " "[0]) {
 // do something
}

, Как Вы видите, с помощью одинарной кавычки для определения единственного символа, намного легче, чем попытка преобразовать нашу строку в символ только для тестирования.

if(s[0] == " "[0]) { 
 // do something
}

действительно похож на высказывание:

string space = " ";
if(s[0] == space[0]) {
 // do something
}

, Надо надеяться, я не смущал Вас больше!

8
ответ дан Wayne 7 November 2019 в 13:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: