| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 30 |
- 너비탐색
- 최단거리 알고리즘
- 드롭다운
- list clear
- raycast
- unity korea
- 최소신장트리 mst
- 유니티
- 디지털트윈
- C#
- dfs
- articulation body
- Simulation
- Unity
- 크루스칼
- 유니티 sparkmain(clone)
- dropdown
- navisworks api
- 티스토리챌린지
- 행동트리
- 습관형성 #직장인자기계발 #오공완
- sparkmain(clone) 무한생성
- sparkmain(clone)
- removeAll
- GetComponent
- 오블완
- 깊이탐색
- 트리구조
- readonly
- unity sparkmain(clone)
- Today
- Total
낑깡의 게임 프로그래밍 도전기
C# 데이터 표현 본문
1. 문자열 가공(Contains, Replace, Trim, ToLower, 기타)
bool isContains = str.Contains("s"); //bool값으로 리턴
string newWord = str.Replace("전", "후"); //바뀐 값을 리턴
strinf trim = str.Trim(); //앞뒤 공백 지우기
TrimStart(); //앞공백 TrimEnd(); //뒷공백
string toLower = str.ToLower(); //소문자 전환 ToUpper(); //대문자 전환
string subString = str.Substring(0,3); //0~3번 인덱스 잘라줘
string Substring2 = str.[0..3]; //위의 축약본
ex) 게시판 글 올릴 때 50번까지 자르고 뒤에는 ...으로 만들 때 쓰기도 한다
int indexOf = str.IndexOf("잘"); //어딧는지 검색
string letter = "여진, 민재, 호동";
string[] arrLetter = letter.Split(','); //,기준으로 자르기
여진
민재
호동
2. 문자열 가공(string.Format, ToString(), $, +, StringBuilder)
string.Format은 반올림 통화표시, 1의자리 앞에 0표시, 천의자리 콤마 표시, 절대값표시 등 다양하게 쓸 수 있다.
stirng name = "민아";
int poing = 3000;
Console.WriteLine(name + "고객님," + point + "입니다."); //레퍼런스 형식이라 string이 복사되어 클래스를 매번 생성하게 됨. 그래서 실무에서 많이 쓰면 문제발생 확률이 높다
Console.WriteLine(string.Format("{0} 고객님, {1} 입니다.", name, point))
Console.WriteLine($"{name} 고객님, {point} 입니다.") //위의 보간법
double sPoint = 234.239
Console.WriteLine(Math.Round(sPoint, 2)); //234.23 //소수점 지정
Console.WriteLine(string.Format("{0:0.00}", sPoint)) //234.23
Console.WriteLine(string.Format("{0:c}", sPoint)); // ₩234,234,234 //자동으로 , 찍힘
Console.WriteLine(point2.Replace(point2.Substring(0,1), point2.Substring(0,1)+" ")); // ₩ 234,234,234
Console.WriteLine(string.Format.("{0:D2}",3)); //03 //D : 정수 //2 : 자리수
Console.WriteLine(string.Format("0:N0", 123123123)); //123,123,123 //N : 콤마표시 //0 : 소수점 0번째 까지
Console.WriteLine(Math.Abs(-123123)); //123123 //절대값
Console.WriteLine((int)-123.123)); //-123 //소수점X
Console.WriteLine(23123123.ToString("N0"));//231,231,23 //string.Format과 호환됨
StringBuilder
using System.Text;
StringBuilder sb = new StringBuilder();
sb.Append(name); //AppendLine은 한 줄 내리는 거
sb.Append("고객님,");
sb.Append(point.ToString());
sb.Append("입니다.")
Console.WriteLine(sb.Tostring); //민아 고객님, 3000 입니다.
ex) 움직임 데이터를 대량으로 받을 때
// "12 13 14 15" → "CDEF" //아스키코드로 바꿔서 글자 들어오는 걸 줄임
//string으로 할때 5분이상 걸리던 것이 스트링 빌드로 하니 1초 걸렸다고 한다.
3. 날짜와 시간 가공
//local 시간
Console.WriteLine(DateTime.Now); //현재시간 //2023-11-18 오전 1:29:28 형식
//utc 전세계 공통시간
Console.WriteLine(DateTime.UtcNow);
//toLocal
DateTime dateTime = DateTime.UtcNow;
Console.WriteLine(dateTime.ToLocalTime());
//toUtc
Console.WriteLine(DateTime.Now.ToUniversalTime());
//보통 서버로 전송할 땐 가공할때 오류가 날 수 있어서 타임스템프를 쓴다
// ToTimeStamp (유닉스 시간을 기준)
DateTimeOffset dateTimeOffset = DateTimeOffset.UtcNow;
Console.WriteLine(dateTimeOffset.ToUnixTimeSecond());b
//ToUnixTimeMilliseconds() //밀리세컨드 자리까지 상세히 나오는 것
//ToLocal
Console.WriteLine(DateTimeOffset.FromUnixTimeSecond(dateTimeOffset.ToUnixTimeSeconds()));
//원하는 형식 출력
Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss z")); //z는 Utc시간 오프셋
//DateTime에 시간 더하기 빼기
Colsole.WriteLine(DateTime.Now.AddHours(3)); //빼기는 -3 //Hours말고 여러가지 있음
Console.WriteLine(DateTime.Now.Hours); //특정 시간 가져오기 //Hours말고 여러가지 있음
//DayOfWeek하면 요일도 가져옴
//DateTime끼리 빼기
TimeSpan timeSpen = DateTime.Now - DateTime.Now.AddHours(232);
Console.WriteLine(timeSpan);
//operator기능을 써서 클래스끼리 뺀것임// DateTime끼리 빼서 TimeSpan 리턴
ex) 게임에서 캐릭터마다의 스탯을 뺄때 하나하나 씩 비교하는건 비효율적이기에 만들어진 클래쓰끼리 빼기 기능 중 하나다
// TimeSpand을 몰랐을 때 var 타입으로 쓰고 마우스를 가져다대어 확인가능
Console.WriteLine(timeSpan.Hours); //24시간 단위 생략하고 나옴
Console.WriteLine(timeSpan.TotalHours); //차이나는 값 다 표현
'C#' 카테고리의 다른 글
| C# 흐름제어(if, switch, 삼항연산자, while, do while, break, countinue, 2중 for문) (2) | 2025.07.11 |
|---|---|
| C# 연산자 (3) | 2025.07.08 |
| C# Call by value, Call by reference (4) | 2025.07.07 |
| C# 데이터 형식, Value Type, Reference Type (0) | 2025.07.07 |
| C# 비주얼 스튜디오(visual studio) 파일 찾기 및 단축키 (0) | 2025.07.07 |