Это работает для меня сегодня с FF 57:
function () {
// JQuery, today, doesn't play well with adding SVG elements - tricks required
$(selector_to_node_in_svg_doc).parent().prepend($(this).clone().text("Your"));
$(selector_to_node_in_svg_doc).text("New").attr("x", "340").text("New")
.attr('stroke', 'blue').attr("style", "text-decoration: line-through");
}
Делает:
Можно индексировать Словарь, Вы не должны были 'добираться'.
Dictionary<string,string> example = new Dictionary<string,string>();
...
example.Add("hello","world");
...
Console.Writeline(example["hello"]);
Эффективный способ тестировать/получать значения TryGetValue
(спасибо к Earwicker):
if (otherExample.TryGetValue("key", out value))
{
otherExample["key"] = value + 1;
}
С этим методом Вы можете быстрый, и не допускающий исключений получают значения (если есть).
Ресурсы:
Словарь <> эквивалент. В то время как это не имеет Получения (...) метода, это действительно имеет индексируемое свойство под названием Объект, к которому можно получить доступ в C# непосредственно с помощью индексной нотации:
class Test {
Dictionary<int,String> entities;
public String getEntity(int code) {
return this.entities[code];
}
}
Если Вы хотите использовать пользовательский ключевой тип затем, необходимо рассмотреть реализацию, которой Равняется IEquatable <> и переопределение (возражают) и GetHashCode (), если значение по умолчанию (ссылка или структура) равенство не достаточно для определения равенства ключей. Необходимо также сделать ключевой тип неизменным для предотвращения странных вещей случай, если ключ видоизменен после того, как он был вставлен в словарь (например, потому что мутация заставила свой хэш-код изменяться).
class Test
{
Dictionary<int, string> entities;
public string GetEntity(int code)
{
// java's get method returns null when the key has no mapping
// so we'll do the same
string val;
if (entities.TryGetValue(code, out val))
return val;
else
return null;
}
}