在 C# 中将 double 转换为 int

2024-01-18

在我们的代码中,我们需要将 double 转换为 int。

double score = 8.6;
int i1 = Convert.ToInt32(score);
int i2 = (int)score;

谁能解释一下为什么i1 != i2?

我得到的结果是:i1 = 9 and i2 = 8.


Because Convert.ToInt32 http://msdn.microsoft.com/en-us/library/ffdk7eyz.aspx rounds:

返回值: 四舍五入到最接近的 32 位有符号整数。如果值 是两个整数之间的中间数,则返回偶数; 即4.5转为4,5.5转为6。

...演员阵容时截断 http://msdn.microsoft.com/en-us/library/yht2cx7b.aspx:

当您从 double 或 float 值转换为整型时, 值被截断。

Update:有关其他差异,请参阅下面 Jeppe Stig Nielsen 的评论(但是,如果score是一个实数,就像这里的情况一样)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C# 中将 double 转换为 int 的相关文章

  • 如何在C++中生成非常大的随机数

    我想使用 C 生成 0 2 64 范围内的非常大的随机数 我已经使用了 rand 函数 但它没有生成非常大的数字 有人可以帮忙吗 使用c 11 使用标准c 11的随机库 http en cppreference com w cpp nume
  • Visual Studios 2015 中的“恢复 NuGet 包”没有执行任何操作

    我将解决方案从 SVN 拉入 Visual Studios 2015 代码中的一些 使用 引用出现错误 因此我尝试在右键单击 解决方案 中的解决方案时运行 恢复 NuGet 包 选项探索者 这没有任何作用 我必须手动进入 nuget 管理器
  • getline 之后返回到文件开头

    所以我已经从文件中读取了所有行 while getline ifile line logic 其中 ifile 是 ifstream line 是字符串 我的问题是我现在想再次使用 getline 并且似乎无法返回到文件的开头 因为运行 c
  • strtok() 使用安全吗[重复]

    这个问题在这里已经有答案了 我读到了很多负面的东西strtok 有人说它已经过时 有人说它不是线程安全的 等等 那么真相是什么 我可以使用吗strtok 它是线程安全的吗 Note 我正在使用 Visual C 您可以使用它 它是标准库的一
  • 如何通过覆盖 MSBuild 目标来防止外语资源生成?

    我正在致力于减少大型 C ASP NET 解决方案的编译时间 我们的解决方案使用通常的 resx 文件方法翻译成大约十几种外语 这些资源文件的解析和编译极大地减慢了我们的编译时间 并且是日常的挫败感 我知道可以创建自定义资源提供程序并摆脱
  • Winform DatagridView 数字列排序

    我只使用一个简单的 DataGridView 来保存一堆数据 有趣的是 我在特定列中有小数 但是当按小数列排序时 它的排序是错误的 例如 起始顺序可能是 0 56 3 45 500 89 20078 90 1 56 100 29 2 39
  • 无法将参数从 `const char *` 转换为 `char *`

    鉴于此代码 void group build int size std string ips Build the LL after receiving the member list from bootstrap head new memb
  • asp.net core http 如果没有内容类型标头,则删除 `FromBody` 忽略

    我在 http 中使用 bodyDELETE要求 我知道目前删除主体是非标准的 但是允许的 使用时出现问题HttpClient它不允许删除请求的正文 我知道我可以使用SendAsync 但我宁愿让我的 API 更加灵活 我希望这个机构是可选
  • 模板与非模板类,跨编译器的不同行为

    我在一些应用程序中使用编译时计数器 它确实很有用 昨天我想用 gcc 编译一个程序 我之前使用的是 msvc 并且计数器的行为在模板类中发生了变化 它在模板类中不再工作 过于简化的代码 Maximum value the counter c
  • ASP.NET MVC 动作过滤器

    有谁知道即使在 CATCH 块中 ActionFilterAttribute 类的 OnResultExecuted 方法是否也会执行 ie CookiesActions public ActionResult Login Usuarios
  • 列表到优先队列

    我有一个 C 大学编程项目 分为两个部分 在开始第二部分时应该使用priority queues hash tables and BST s 我 至少 在优先级队列方面遇到了麻烦 因为它迫使我自己重做第一部分中已经实现的许多代码 该项目是关
  • 如何在 C++ 运行时更改 QML 对象的属性?

    我想在运行时更改 QML 对象的文本 我尝试如下 但文本仍然为空 这是后端类 class BackEnd public QObject Q OBJECT Q PROPERTY QString userFieldText READ userF
  • 使用 OleDbCommand / OleDbDataAdapter 读取 CSV 文件

    我不明白为什么 但是当我使用 OleDbDataAdapter 或 OleDbCommand 读取 CSV 文件时 在这两种情况下 生成的数据结构良好 它识别文件头中的列 但行数据都是空字符串 我之前已经成功进行过多次 CSV 处理 因此我
  • 如果finally 块包含await,为什么*有时*不会在ThreadAbortException 上执行?

    UPDATE 我不认为这个问题是重复的ThreadAbortException最后可以跳过吗 https stackoverflow com questions 18002668 can threadabortexception skip
  • 在 C# .NET 中对非 ASCII 字符进行编码

    我想向我的应用程序发送的电子邮件添加自定义标头 标头名称只能包含 ASCII 字符 但对于值和用户可能会输入 UTF 8 字符 我必须对它们进行 Base64 编码 此外 我还必须将它们解码回 UTF 8 以便在 UI 中向用户显示它们 最
  • 使用 cmake 将两种解决方案合二为一

    我有两个单独的 Visual Studio 2013 解决方案 我想将它们迁移到一个解决方案中 因为第一个解决方案 使用 Qt 充当第二个解决方案的 GUI 最后 我希望有一个结构如下的单一解决方案 Solution All Build P
  • 在特定线程上运行工作

    我想要一个特定的线程 任务队列并在该单独的线程中处理任务 应用程序将根据用户的使用情况创建任务并将其排队到任务队列中 然后单独的线程处理任务 即使队列为空 保持线程活动并使用它来处理排队任务也至关重要 我尝试过几种实现TaskSchedul
  • C - 获取外部IP地址

    我需要通过 C C 调用获取我的公共 IP 地址 我知道作为替代方案 我可以从 http whatismyip akamai com 等外部链接获取 我写了一个示例来获取外部IP地址 但我的程序没有返回外部 IP 地址 我正在获取内部 IP
  • 如何通过代理将套接字连接到http服务器?

    最近 我使用 C 语言编写了一个程序 用于连接到本地运行的 HTTP 服务器 从而向该服务器发出请求 这对我来说效果很好 之后 我尝试使用相同的代码连接到网络上的另一台服务器 例如 www google com 但我无法连接并从网络中的代理
  • 使用C标准数学库精确计算标准正态分布的CDF

    标准 C 数学库不提供计算标准正态分布 CDF 的函数 normcdf 然而 它确实提供了密切相关的函数 误差函数 erf 和互补误差函数 erfc 计算 CDF 的最快方法通常是通过误差函数 使用预定义常量 M SQRT1 2 来表示 d

随机推荐

  • 使用 vscode 扩展 API 更改文件 EOL

    我可以在 VSCode 中默默地更改行尾顺序吗 像这样的事情 vscode commands executeCommand workbench action editor changeEOL LF 您可以将此行添加到您的用户首选项设置中 C
  • 应用按键后捕获 HTML 文本输入按键?

    完全是新手问题 所以请耐心等待 当 HTML 文本输入控件中发生按键时 有两个事件似乎对管理按键很有用 onKeyPress 和 onChanged onKeyPress 在按下按键后 但在将操作应用于控件的文本之前触发 仅当焦点从控件中移
  • 使用 webdriver 查找元素的最佳且最快的方法是什么? By.XPath 或 By.ID 还是其他?为什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 使用 webdriver 查找元素的最佳且最快的方法是什么 By XPath 或 By ID 还是其他 为什么 我在很多地方都读到 XPath
  • 替换字符串中的字符,而不使用字符串replace()方法[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个字符串 String originalString This car is my car 我想用 自行车 替换 汽车 而不使用字符
  • 使用 ExecutorService 将任务确定性分配给线程

    给定 Executor 服务具有固定的线程池 是否可以保证任务到线程的确定性分配 更准确地说 假设只有两个线程 即 pool thread 0 和 pool thread 1 并且有 2 个要执行的任务的集合 我希望实现的是前一个线程始终执
  • 将音频缓冲区从 44100 重新采样到 16000

    我有 data uri 格式的音频数据 然后我将此 data uri 转换为缓冲区 现在我需要新采样率的缓冲区数据 当前音频数据为 44 1khz 我需要 16khz 的数据 如果我记录了使用 RecordRTC API 录制音频 如果我以
  • 连接池 – 一个进程 – 多个线程

    我对连接池的理解是 如果连接字符串完全相同 则我们重用该连接而不是建立新连接 我的问题是我正在创建许多线程用于并行处理 在这个 虚拟 程序中 我创建了 500 个线程并让 ThreadPool 函数处理这些线程 步骤是 每个线程都会用 SQ
  • 在 PyCrypto AES MODE_CTR 中包含随机数和块计数

    一些背景信息 您可以跳过这部分以了解实际问题 这是我在 stackoverflow 上关于这个主题的第三个问题 为了完整起见 这些是其他问题AES 与 crypt js 和 PyCrypto https stackoverflow com
  • 生成简单的 CRUD 存储过程

    我正在开发一个项目 该项目遵守与 SQL 实现相关的某些公司标准 具体来说 可以访问所有 SQL Server 内容only通过存储过程 没有 ORM 或 LINQ 我们 80 或更多的需求可以通过基本的 CRUD CREATE READ
  • 将 SSL 与 Redis 和 Spring Data Redis 一起使用时“无法获取 Jedis 连接”

    我正在使用启用 SSL 的 Redis 来自 AWS 的 ElasticCache 并且在使用 Spring Data Redis 连接到它时遇到困难 请注意 如果我使用普通 Jedis 或 Jedis Pool 与 Spring 连接工作
  • 如何使用 Chrome 扩展程序更改网站的 CSS?

    我希望为个人和可能的个人朋友使用创建一个扩展 它只需更改我访问的网站上显示的一些颜色 我使用 Reddit 增强套件 它具有 夜间模式 选项 可以完全改变 Reddit 的颜色外观 我想知道如何编辑或注入 CSS 代码到该网站 以便网站中使
  • 无法从 Amazon Linux EC2 实例上的 Wordpress 连接到 RDS mysql 数据库

    我正进入 状态Error establishing a database connection尝试从我的 Wordpress 实例连接到 Amazon RDS 上的 mysql 时 Wordpress 位于我的 AWS Linux EC2
  • PHP读取和解析大文件? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我即将读取一个大小为 200Mb 的
  • MySQL中如何比较两个查询结果是否相等?

    我是 MySQL 用户 我有两个疑问 我想比较他们的结果是否相等 我想用一个返回 true 或 false 的查询来完成此操作 因此我的两个查询很可能采用子查询的形式 我想避免返回两个查询的结果并在应用程序级别比较它们 以减少通信并提高性能
  • 如何在单击时切换两个图像

    我正在制作一个可折叠的树视图 我做到了这一切 我只需要我的 and 每当单击图标时就会进行切换 当我更改图标时我做了这部分 to 单击后 使用 jQuery 并使用以下代码 this attr src images expand gif 问
  • 如何在显示 ABPeoplePickerNavigationController 时指定组

    最初显示时如何指定组ABPeoplePickerNavigationController 所以它不会自动显示 所有联系人 是的 我必须让它发挥作用 将您的班级设置为人员选择器的代表 pp delegate self 然后实施 void na
  • 在 django 日期时间上使用 strftime 会在字符串中生成 UTC 时间

    我的模型之一中有以下代码 def shortDescription self return self name self class date strftime I M self class date是否具有时区意识DateTimeFiel
  • 在 C++ 模板化代码中找不到构造函数[重复]

    这个问题在这里已经有答案了 使用以下命令编译它时出现此错误 g main cpp Vec cpp Wall o main I tmp cciqbEQJ o In function main main cpp text 0x8b undefi
  • 如何以兼容模式运行Java?

    Java支持兼容模式运行吗 换句话说 如果我们在系统上安装了 JDK 8 是否可以将其配置为使用相同的安装在 7 或之前版本上运行我的应用程序 我可以举一个例子 比如 IE 11 可以根据兼容性选项切换为 IE 8 9 或 10 运行 我同
  • 在 C# 中将 double 转换为 int

    在我们的代码中 我们需要将 double 转换为 int double score 8 6 int i1 Convert ToInt32 score int i2 int score 谁能解释一下为什么i1 i2 我得到的结果是 i1 9