반응형
KeyValuePair 값을 수정하는 방법은 무엇입니까?
읽기 전용 필드이기 때문에 항목 값을 수정하려고 할 때 문제가 발생했습니다.
KeyValuePair<Tkey, Tvalue>
다음과 같은 다른 대안을 시도했습니다.
Dictionary<Tkey, Tvalue>
하지만 거기에도 같은 문제가 있습니다. 값 필드를 새 값으로 설정하는 방법이 있습니까?
수정할 수 없으며 새 것으로 바꿀 수 있습니다.
var newEntry = new KeyValuePair<Tkey, Tvalue>(oldEntry.Key, newValue);
또는 사전 :
dictionary[oldEntry.Key] = newValue;
여기에서 KeyValuePair를 변경 가능하게 만들려면.
맞춤 수업을 만드세요.
public class KeyVal<Key, Val>
{
public Key Id { get; set; }
public Val Text { get; set; }
public KeyVal() { }
public KeyVal(Key key, Val val)
{
this.Id = key;
this.Text = val;
}
}
KeyValuePair 어디에서나 사용할 수 있습니다.
KeyValuePair<TKey, TValue>
불변입니다. 수정 된 키 또는 값으로 새로 만들어야합니다. 다음에 실제로 수행 할 작업은 시나리오와 정확히 수행하려는 작업에 따라 다릅니다.
KeyValuePair는 수정할 수 없지만 다음과 같이 사전 값을 수정할 수 있습니다.
foreach (KeyValuePair<String, int> entry in dict.ToList())
{
dict[entry.Key] = entry.Value + 1;
}
또는 다음과 같이 :
foreach (String entry in dict.Keys.ToList())
{
dict[entry] = dict[entry] + 1;
};
참고 URL : https://stackoverflow.com/questions/13454721/how-to-modify-a-keyvaluepair-value
반응형
'programing' 카테고리의 다른 글
git은 한 분기와 다른 분기의 차이점을 기록합니다. (0) | 2020.12.04 |
---|---|
"사용자가 가입하도록 허용"을 비활성화 한 상태에서 Jenkins에 사용자 추가 (0) | 2020.12.04 |
Topshelf 애플리케이션을 Windows 서비스로 설치 (0) | 2020.12.04 |
HTML의 이미지 소스에서 이미지 회전 (0) | 2020.12.04 |
IntelliJ IDEA에서 .gitignore에 파일 / 폴더를 추가하는 방법은 무엇입니까? (0) | 2020.12.04 |