class hoge { public DateTime date { get; set; } public int no { get; set; } }
class Program { static void Main(string[] args) { var test = new hoge[] { new hoge { date = DateTime.Parse("2018/02/20"), no = 10 }, new hoge { date = DateTime.Parse("2018/02/20"), no = 20 } }; //期待する結果 date = "2018/02/20", no = 30 } } 0630デフォルトの名無しさん (ワッチョイ 97bb-OzgD)2018/02/20(火) 20:21:55.34ID:yei3sCdR0 そのものズバリGroupByあるだろが 目ついてんのか 0631デフォルトの名無しさん (ワッチョイ d775-dsKU)2018/02/20(火) 20:38:37.21ID:rWzsbI8r0 test.GroupBy(x=>x.date).Select(xs=>new Hoge{date=xs.Key, no=xs.Source.Sum(x=>x.no)})
var key=0; var grList=new List<IGrouping<int,Hoge>>(); foreach(var x in test){ 0632デフォルトの名無しさん (ワッチョイ bf76-HsKf)2018/02/20(火) 20:47:17.84ID:u29zEFTf0 教えたいただいたコードをちょっと変えて var newtest = test.GroupBy(x => x.date).Select(xs => new hoge { date = xs.Key, no = xs.Sum(x => x.no) }); で期待する結果が出ました
ってやつじゃない?C では結構重要だ 0637デフォルトの名無しさん (ワッチョイ 9fd2-hxII)2018/02/20(火) 22:15:19.97ID:l6nN7Avj0 それってマクロを使ってた flag == TRUE の話じゃなかったっけ。 0638デフォルトの名無しさん (ワッチョイ d7f2-T3WU)2018/02/20(火) 22:26:59.92ID:7+Xxu/Ir0 BOOL(intのtypedef)の話だな。flag == true は冗長であることを除けば何の問題もない。 あと、BOOLをTRUEと比較しちゃならんってのもFALSE(0)以外が真とみなされる文脈でのことで、 本当にTRUE(1)を求めているのであればそれと比較することに問題があるはずもない。 0639デフォルトの名無しさん (ワッチョイ d775-bVi4)2018/02/20(火) 22:37:10.96ID:rWzsbI8r0 亀レスワロタ 0640デフォルトの名無しさん (ワッチョイ 9f19-Lei5)2018/02/20(火) 22:46:07.64ID:kFTojjXs0 VBでのif thenのせいもあるのかなっと想像した 0641デフォルトの名無しさん (ワッチョイ 9f9d-MriG)2018/02/20(火) 23:41:38.85ID:vzQfIoah0 if(min <= dt && dt <= max){ debug.print("left thing must be a minimum , right must be a maximum"); } 0642デフォルトの名無しさん (アウアウエー Sadf-5Tws)2018/02/20(火) 23:50:23.07ID:rHaxNO+xa all your base are belong to us かよw 0643デフォルトの名無しさん (ワッチョイ 9f9d-MriG)2018/02/21(水) 00:12:02.20ID:eNjhkesX0 //HACK: This is The Golden Rule of indentation. if (~) { count++; } else { count = 0; } //ass: if (~) { } 0644デフォルトの名無しさん (ワッチョイ d7ea-QcxC)2018/02/21(水) 11:59:42.26ID:VoejUmIV0 String flag = "true"; if(flag) { }