나는 2223,00
과 같은 숫자 문자열을 가지고 있습니다. 나는 그것을 2223
으로 바꾸고 싶다. 이것은 : 이후없이 ","정보없이. ","다음에 소수점 이하 두 자리 만 있다고 가정합니다.C#에서 문자열의 마지막 문자를 제거합니다. 우아한 방법?
은 내가 그랬어 :
str = str.Remove(str.Length - 3, 3);
더 우아한 해결책이 있습니까? 어쩌면 다른 기능을 사용하고 있을까요? 초기 값은 문자열로 소수 인 경우 -I 명시 번호들
나는 많은 좋은 답변을 받았다. 그러나 이것은 내가 우아함의 측면에서 사용할 것입니다. 그럼에도 불구하고 ** 저수준 **에서는 어떤 것이 더 효율적인지 모르겠습니다. 그래서, 당신의 선택을해라! – Kani
두 번째 솔루션은 읽기 쉽고 이해하기 쉬우 며 유지 관리가 쉽습니다. ** 낮은 수준의 ** 성능면에서 그 차이는 매우 미미합니다. ','가 항상 -3 위치에 있다는 것을 안다면, 첫 번째 해법은 여전히 괜찮지 만, * 조숙 한 최적화 *는 시간을 낭비하는 끔찍한 일입니다. –
@ 카니 첫 번째가 가장 효율적입니다. 그러나 나는 스캇과 완전히 동의합니다. 프로파일 링 후에 perf가 있다는 것을 알지 못한다면 항상 두 번째를 고를 것입니다. 병목 현상이 여기에 있습니다. 이 두 가지 (그리고 대부분의 다른 대답들)는 거의 모든 목적을 위해 충분히 빠르게 좋아질 것입니다. –