특정 정확도를 위해 숫자를 잘라내는 가장 효율적인 방법은 무엇입니까?특정 정확도를 위해 숫자를 잘라내는 가장 효율적인 방법은 무엇입니까?
답변
int ms = Convert.ToInt32(
Convert.ToString(DateTime.Now.Millisecond).Substring(0, 3));
또는
double Length = Math.Pow(10, (DateTime.Now.Millisecond.ToString().Length - 3));
double Truncate = Math.Truncate((double)DateTime.Now.Millisecond/Length);
편집 :
내가 게시 할 예정입니다 코드를 모두 아래 실행 한 후, 이중 방법이 잘 때문에 변수의 재사용으로 작동합니다. 5,000,000 DateTime.Now (두 검사에 의해 건너 뛸 수 있음)의 반복 동안 SubString()
메서드는 9598ms를 사용했으며 Double
메서드는 6754ms를 사용했습니다.
EDIT # 2 : * 1000으로 편집하여 테스트를 반복하여 반복 실행 여부를 확인하십시오. 다음과 같이 테스트하는 데 사용
코드하십시오 DateTime
에서
Stopwatch stop = new Stopwatch();
stop.Start();
for (int i = 0; i < 5000000; i++)
{
int MSNow = DateTime.Now.Millisecond * 1000;
if (MSNow.ToString().Length > 2)
{
int ms = Convert.ToInt32(
Convert.ToString(MSNow).Substring(0, 3));
}
}
stop.Stop();
Console.WriteLine(stop.ElapsedMilliseconds);
stop = new Stopwatch();
stop.Start();
for (int i = 0; i < 5000000; i++)
{
int MSNow = DateTime.Now.Millisecond * 1000;
int lengthMS = MSNow.ToString().Length;
if (lengthMS > 2)
{
double Length = Math.Pow(10, (lengthMS - 3));
double Truncate = Math.Truncate((double)MSNow/Length);
}
}
stop.Stop();
Console.Write(stop.ElapsedMilliseconds);
Console.ReadKey();
는 Milliseconds는 항상 당신이 아무 상관이없는 0에서 999 사이에 구성된다. 일부는 ESP 일이 일어나고있다처럼 정밀 다른 답변에서
나는 게시 한 MSDN 링크를 인용한다. 내 대답은 "0에서 999 사이의 값으로 표시되는 밀리 초 구성 요소입니다." 1 달에 32 일, 1 초에 999 밀리 초를 가질 수 없다는 것은 논리적 인 것처럼 보입니다. –
Math.Floor(num * Math.Pow(10, x) + 0.5)/Math.Pow(10, x)
, 그것은 보인다. 나는 초능력이 아니야, 정교하게 말해 줄 수 있니?
글쎄, 나는 문맥에서 답을 주었다고 생각한다. 그러나 나는 당신이 반올림을 요구하고 있다고 생각했다. 어쨌든 나는 숫자를 잘라내는 것을 얻을 수 없다. 어쨌든 문맥을 파악하지 못해서 미안하다. –
- 1. 문자열에서 모든 (자연수) 숫자를 추출하는 가장 효율적인 방법
- 2. 문자열에서 특정 문자의 색인을 추적하는 가장 효율적인 방법은 무엇입니까?
- 3. C++ : 효율적인 방법으로 double을 잘라내는 방법?
- 4. XML 파일을 deserialze하는 가장 효율적인 방법은 무엇입니까
- 5. iPhone 방향 관리 : 가장 효율적인 방법은 무엇입니까?
- 6. HTML 테이블을 필터링하는 가장 효율적인 방법은 무엇입니까?
- 7. 가장 효율적인 방법은 프로그램을
- 8. 가장 효율적인 방법은
- 9. 특정 형식의 숫자를 정수로 변환하는 방법은 무엇입니까?
- 10. 발생 횟수를 계산하는 가장 효율적인 방법은 무엇입니까?
- 11. 가장 효율적인 데이터베이스 날짜 저장 방법은 무엇입니까?
- 12. struct를 재 할당하는 가장 효율적인 방법은 무엇입니까?
- 13. 개발자가 작업을 전환하는 가장 효율적인 방법은 무엇입니까?
- 14. 파일에 데이터를 쓰는 가장 효율적인 방법은 무엇입니까?
- 15. Java에서 입력을받는 가장 효율적인 방법은 무엇입니까?
- 16. 생산성과 품질을 향상시키는 가장 효율적인 방법은 무엇입니까?
- 17. 가장 효율적인 쿼리는 무엇입니까?
- 18. 큰 파일을로드하고 작은 파일로 잘라내는 방법은 무엇입니까?
- 19. 코어 데이터를 사용하는 가장 효율적인 방법은 무엇입니까?
- 20. Python에서 동시성을 구현하는 가장 효율적인 방법은 무엇입니까?
- 21. Java - ArrayList를 동기화하는 가장 효율적인 방법은 무엇입니까?
- 22. 파이썬에서 트리를 트래버스하는 가장 효율적인 방법은 무엇입니까?
- 23. 문자열 비교를 수행하는 가장 효율적인 방법은 무엇입니까?
- 24. 항목을 찾는 가장 효율적인 방법은 무엇입니까?
- 25. 이 작업을 수행하는 가장 효율적인 방법은 무엇입니까?
- 26. MySQL 테이블을 설정하는 가장 효율적인 방법은 무엇입니까?
- 27. ifstream을 문자열로 읽는 가장 효율적인 방법은 무엇입니까?
- 28. MySQL을 MySQL에 저장하는 가장 효율적인 방법은 무엇입니까?
- 29. 사용자의 DirectoryEntry를로드하는 가장 효율적인 방법은 무엇입니까?
- 30. 여러 CCSprites를 처리하는 가장 효율적인 방법은 무엇입니까?
을 X – leppie
@leppie : 개정 1에서 : 'System.DateTime의 1/3 자리 만 가져오고 싶습니다.' –