TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to VBNET

VB.NET Math.Truncate Method, Cast Double to Integer

Use Math.Truncate to remove the fractional parts of numbers. See how a Double is cast to an Integer.
Math.Truncate. Consider a number like 1.234. It has an integral part—the value 1—and also a fractional part. With Math.Truncate we eliminate the fractional part.
For negative numbers, Math.Truncate also just removes the fractional part. This is different from the behavior of Math.Round, Ceiling, or Floor.
An example program. Here we introduce four Doubles and then call Math.Truncate on them. Their fractional parts are removed—their signs and integral parts are kept.

First: We use Math.Truncate and print the results to the console with Console.WriteLine.

Console

Then: We use implicit casts to Integer. For small doubles (which fit in the integer bytes) the result is the same as Math.Truncate.

Integer
VB.NET program that uses Math.Truncate, Double to Integer casts Module Module1 Sub Main() Dim value1 As Double = 1.234 Dim value2 As Double = 1.999 Dim value3 As Double = -1.999 Dim value4 As Double = -1.234 Console.WriteLine(":::TRUNCATE:::") ' Use Math.Truncate to truncate the double values. Console.WriteLine(Math.Truncate(value1)) Console.WriteLine(Math.Truncate(value2)) Console.WriteLine(Math.Truncate(value3)) Console.WriteLine(Math.Truncate(value4)) Console.WriteLine(":::CAST:::") ' Use implicit Integer casts to truncate the double values. Dim value1Cast As Integer = value1 Dim value2Cast As Integer = value2 Dim value3Cast As Integer = value3 Dim value4Cast As Integer = value4 Console.WriteLine(value1Cast) Console.WriteLine(value2Cast) Console.WriteLine(value3Cast) Console.WriteLine(value4Cast) End Sub End Module Output :::TRUNCATE::: 1 1 -1 -1 :::CAST::: 1 2 -2 -1
Some notes. If a program uses smaller numbers only, then casting to Integer is acceptable and may be more efficient. But for large numbers, this can cause an overflow.

So: In most cases Math.Truncate is a better choice. It also makes explicit the goal of the operation.

A summary. Like Math.Round, Ceiling and Floor, Math.Truncate changes the fractional part of a number. Its affects negative numbers in the same way as positive numbers.Math.Round
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf