Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# object转int

作者:一岁就很帅   发布日期:2025-09-20   浏览:67

// 将 object 类型转换为 int 类型的示例代码

object obj = 123; // 假设这是一个从其他地方获取的对象,其实际类型是 int

// 方法一:使用直接类型转换 (可能会抛出异常)
try {
    int number1 = (int)obj;
    Console.WriteLine("方法一结果: " + number1);
} catch (InvalidCastException ex) {
    Console.WriteLine("类型转换失败: " + ex.Message);
}

// 方法二:使用 Convert.ToInt32 方法 (处理 null 和其他类型的对象更安全)
try {
    int number2 = Convert.ToInt32(obj);
    Console.WriteLine("方法二结果: " + number2);
} catch (FormatException ex) {
    Console.WriteLine("格式错误: " + ex.Message);
} catch (OverflowException ex) {
    Console.WriteLine("数值超出范围: " + ex.Message);
} catch (InvalidCastException ex) {
    Console.WriteLine("类型转换失败: " + ex.Message);
}

// 方法三:使用 as 关键字和 Nullable<int> (仅适用于引用类型或可空值类型)
int? number3 = obj as int?;
if (number3.HasValue) {
    Console.WriteLine("方法三结果: " + number3.Value);
} else {
    Console.WriteLine("类型转换失败");
}

解释说明:

  1. 方法一:直接使用 (int) 进行强制类型转换。如果 obj 不是 int 类型,则会抛出 InvalidCastException 异常。
  2. 方法二:使用 Convert.ToInt32 方法,它可以处理更多的输入类型(如字符串、浮点数等),并且在遇到无效输入时会抛出相应的异常(如 FormatExceptionOverflowException)。
  3. 方法三:使用 as 关键字将 obj 转换为 Nullable<int>,适用于引用类型或可空值类型。如果转换失败,number3 将为 null

根据你的需求选择合适的方法进行类型转换。

上一篇:c# list 转string

下一篇:c#向下取整

大家都在看

c# 二进制

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

.net和c#

c#获取系统时间

c#游戏开发

c#网络编程

c# rectangle

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站