//매출 클래스
public class sale
{
//점포이름
public string ShopName{ get; set; }
//상품 종류
public string ProductCategory{ get; set; }
//매출 액
public int Amount{ get; set; }
};
//ReadSales 메서드
public class Test : MonoBehaviour
{
//매출 데이터를 읽어 들이고 Sales 객체 리스트를 반환한다.
static List<Sale> ReadSales(string filePath)
{
List<Sale> sales = new List<Sale>(); // 매출 데이터를 넣을 리스트 객체를 생성한다
string[] lines = File.ReadAllLines(filePath); // 파일을 한번에 읽어 들인다
foreach (string line in lines) //읽어 들인 행 개수만큼 반복한다
{
string[] items = line.Split(',');
Sale sale = new Sale //세일객체를 생성
{
ShopName = items[0],
ProductCategory = items[1],
Amount = int.Parse(items[2])
};
sales.Add(sale); //Sale객체를 리스트에 추가한다.
}
return sales;
}
}
//점포별 매출 계산
public class SalesCounter
{
private List<Sale> _sales;
//생성자
public SalesCounter(List<Sale> sales)
{
_sales = sales;
}
//dictionary에 집계를 저장한다
public Dictionary<string, int> GetPerStoreSales()
{
Dictionary<string, int> dict = new Dictionary<string, int>();
foreach (Sale sale in _sales)
{
if (dict.ContainsKey(sale.ShopName))
{
dict[sale.ShopName] += sale.Amount;
}
else
dict[sale.ShopName] = sale.Amount;
}
return dict;
}
}
//main
private void Start()
{
SalesCounter sales = new SalesCounter(ReadSales("sales.csv"));
Dictionary<string, int> amountPerStore = sales.GetPerStoreSales();
foreach(KeyValuePair<string,int> obj in amountPerStore)
{
Debug.Log(" key:" +obj.Key + "value:" + obj.Value);
}
}
피드 구독하기:
댓글 (Atom)
git rejected error(feat. cherry-pick)
문제 아무 생각 없이 pull을 받지않고 로컬에서 작업! 커밋, 푸시 진행을 해버렷다. push에선 remote와 다르니 당연히 pull을 진행해라고 하지만 로컬에서 작업한 내용을 백업하지 않고 진행하기에는 부담스럽다(로컬작업 유실 가능성) 해결하려...
-
/// < summary > /// 검색 조건과 내용으로 테이블에 있는 데이터를 검색하는 메서드 /// </ summary > /// < param name = "valu...
-
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...
-
해결책 서비스 > application layer Gateway Service 를 한번 실행해주면 엉킨포트가 풀리는지 어떤지 모르겠지만 된다 포트가 풀린것 확인하려면 명령프롬프트창에 netstat -n 명령을 넣어서 확인할 수 있다...
댓글 없음:
댓글 쓰기