[.net]標準クエリ演算子サンプル
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ShugoTest
{
class Person
{
public string name = string.Empty;
public int old = 0;
public Person(string name, int old)
{
this.name = name;
this.old = old;
}
}
class Program
{
static void Main(string[] args)
{
try
{
int[] datas = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int sum = 0;
Array.ForEach<int>(datas, (x) => { sum += x; });
Console.WriteLine("sum:" + sum.ToString());
Console.WriteLine("");
List<int> l = new List<int>(datas);
List<int> rl1 = l.FindAll((x) => x > 2);
foreach (var item in rl1) { Console.WriteLine(item); }
Console.WriteLine("");
var rl2 = l.Where((x) => x > 5);
foreach (var item in rl2) { Console.WriteLine(item); }
Console.WriteLine("");
var rl3 = l.Select((x) => x > 5);
foreach (var item in rl3) { Console.WriteLine(item); }
Console.WriteLine("");
List<int> ll = new List<int>(datas);
ll.Sort((int x, int y) => { return y - x; });
foreach (var item in ll) { Console.WriteLine(item); }
Console.WriteLine("");
string[] str_datas = { "1", "2", "3", "4", "5", "6" };
var fieldIndex = Array.ConvertAll<string, int>(str_datas, (x) => int.Parse(x) + 1);
foreach (var item in fieldIndex) { Console.WriteLine(item.ToString()); }
Console.WriteLine("");
List<string> str_datas_list = new List<string>(str_datas);
var fieldIndex_2 = str_datas_list.ConvertAll<int>((x) => int.Parse(x));
fieldIndex_2.ForEach((x) => Console.WriteLine(x));
Console.WriteLine("");
List<string> lll = str_datas_list.ConvertAll<string>((x) => x + "AAA");
lll.ForEach((x) => Console.WriteLine(x));
Console.WriteLine("");
str_datas_list.ForEach((x) => x += 2);
Console.WriteLine(string.Join(",", str_datas_list.ToArray()));
Console.WriteLine("");
Console.WriteLine(str_datas_list.Max());
Console.WriteLine("");
Console.WriteLine(string.Join(",", str_datas_list.Skip(3)));
Console.WriteLine("");
Console.WriteLine(str_datas_list.Sum((x) => int.Parse(x)));
Console.WriteLine("");
Console.WriteLine(str_datas_list.Take(3).Sum((x) => int.Parse(x)));
Console.WriteLine("");
int[] intDatas = { 1, 2, 3, 4, 1, 2, 3, 4 };
Console.WriteLine(string.Join(",", intDatas.Distinct()));
List<int> intDataList = new List<int>(intDatas);
intDataList.Distinct();
intDataList.ForEach((x) => Console.WriteLine(x));
Console.WriteLine("");
Console.WriteLine(intDatas.Count());
Console.WriteLine(intDatas.Count<int>(x => x > 3));
Person[] persons =
{
new Person("oda",20),
new Person("kawai",20),
new Person("nakamura",22),
new Person("hayashi",20),
new Person("murata",22),
};
var ii = persons.GroupBy(x => x.old);
foreach (var item in ii)
{
Console.WriteLine("■" + item.Key);
foreach (var item2 in item)
{
Console.WriteLine(string.Format("{0}({1})", item2.name, item2.old));
}
}
Console.WriteLine("press any key to exit.");
Console.ReadLine();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
Console.ReadLine();
}
}
}
}