|
|
E01:
条件を満たす要素がシーケンス中に1つでもあれば true を返す - Any
次の例では、
配列内の名前(選手)中に「中」文字列が含まれる選手がいるか調べる。
|
/*日本チームクラス*/
public class
Team {
public
string 名前 { get;
set; }
public
string 所属 { get;
set; }
public
override int GetHashCode() {
int _HashCode =
this.名前.GetHashCode() ^
this.所属.GetHashCode();
return _HashCode;
}
public
override bool Equals(object
obj) {
return
this.GetHashCode().Equals(obj.GetHashCode());
}
public
override string ToString() {
string _return =
this.名前 + "
> " + this.所属;
return _return;
}
}
private void
button1_Click(object sender,
EventArgs e) {
Team[] _Team = {
new
Team {名前 =
"中村 俊輔", 所属 =
"セルティック"},
new
Team {名前 =
"遠藤 保仁", 所属 =
"G大阪"},
new
Team {名前 =
"中沢 佑二", 所属 =
"横浜"},
new
Team {名前 =
"田中 達也", 所属 =
"浦和"}
};
/* 配列内に特定の部分文字列があるか調べる。 */
bool iAfterE = _Team.Any(w =>
w.名前.Contains("中"));
Console.WriteLine("「中」のつく選手いる?
{0}", iAfterE);
}
「中」のつく選手いる? True
|
E02:
シーケンス中の全ての要素が条件を満たせば true を返す - All
次の例では、4教科が全て50点以上か調べる。
|
/*教科点数クラス*/
public class
Subject {
public
string 教科 { get;
set; }
public int
点数 { get; set;
}
public
override int GetHashCode() {
int _HashCode =
this.教科.GetHashCode() ^
this.点数.GetHashCode();
return _HashCode;
}
public
override bool Equals(object
obj) {
return
this.GetHashCode().Equals(obj.GetHashCode());
}
}
private void
button1_Click(object sender,
EventArgs e) {
Subject[] _Subject1 = {
new
Subject {教科 =
"国語", 点数 = 76},
new
Subject {教科 =
"算数", 点数 = 50},
new
Subject {教科 =
"理科", 点数 = 70},
new
Subject {教科 =
"社会", 点数 = 90}
};
/* 4教科が全て50点以上か調査する。 */
bool _bool = _Subject1.All(n => n.点数
>= 50);
Console.WriteLine("全ての教科で50点以上か?
{0}", _bool);
}
全ての教科で50点以上か? True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| この Web
サイトに関する感想などについては、takamorimail@yahoo.co.jpまで電子メールでお送りください。ただし、技術的な質問にはお答えできません。 |
| Copyright (C) 2008 Takamori |
|