본문 바로가기

String 클래스와 StringBuilder 클래스의 차이점 StringBuilder 클래스로 구현하면 소요시간이 훨씬 적게 걸리고 메모리도 적게 사용합니다. 따라서 StringBuilder는 다양한 문자열 조작이 많이 필요한 곳에 String 대신 사용하면 효과적입니다.예제 프로그램으로 문자열에 문자열을 추가하는 동작을 100,000번 수행한 후의 결과를 살펴보겠습니다. Ticks로 계산했을 때 String은 389,592,293 Tick, StringBuilder는 10,000 Tick으로 수천배나 되는 엄청난 차이를 확인할 수 있었습니다. private void btnStr_Click(object sender, RoutedEventArgs e) { long start = DateTime.Now.Ticks; String str = ""; for (int i =.. 더보기
Stopwatch 사용법 Stopwatch를 사용할 때, 다음과 같이 DispatcherTimer와 Stopwatch 클래스를 사용합니다. using System.Windows.Threading; // for DispatcherTimer using System.Diagnostics; // for Stopwatch public Game() { InitializeComponent(); t.Interval = new TimeSpan(0, 0, 0, 0, 100); t.Tick += t_Tick; t.Start(); sw.Start(); } void t_Tick(object sender, EventArgs e) { TimeSpan ts = sw.Elapsed; Time.Text = String.Format("Time = {0:0}:{1.. 더보기
[WPF] 시계가 나오는 계산기 시간이 표시되는 간단한 계산기를 만들어 보겠습니다. 이 계산기는 이번 학기 중간고사 시험문제였습니다. 계산기를 만들 수 있는지, 그리고 Timer를 사용할 수 있는지를 테스트하기 위한 프로그램입니다.완성된 모습은 다음과 같습니다. 일단 XAML로 디자인을 하겠습니다.크게 보면 위쪽에 숫자와 시간을 표시하는 부분과 아래의 20개의 Button이 있는 부분이 있습니다. 위 부분은 Grid 안에 TextBox와 TextBlock을 적절히 위치하면 되겠습니다.아래의 버튼 부분은 Grid를 Row=4, Column=5의 20개 Grid로 분할하고 각 Grid에 Button을 하나씩 두면 되겠습니다.이 두개의 Grid를 StackPanel에 넣으면 위, 아래로 배치되겠습니다.Xaml 코드는 다음과 같습니다. 0 ±.. 더보기