C# 中数据类型转换

   
    在C#中编程,对参数类型不象VB中那样宽容,不可避免的要进行各种类型间的相互转换,如在文本控件中输入的数据在参与计算时必须转换为相应的数值类型才能进行计算。通常我们可以用以下三种方法来进行:

// 1、强制类型转换 

private   void  tst() 

string  t_string = " 1.4532 "
double  t_rtn; 
t_rtn
= Math.Cos(( double )t_string); 
// dot.gif 


/* 2、Parse方法 

double、string等类都具有一个名为Parse的方法,我们可用其将其它类型的变量转换为本类型: 
*/
private   void  button1_Click( object  sender, System.EventArgs e) 

double  sp_x,sp_y,dis,azm,p_x,p_y; 
string  Alpha; string [] azTmp; 
double  Ad,Am,As;  //  度、分、秒 

Alpha
= az.Text; 
azTmp
= Alpha.Split( ' . ' ); 
Ad
= Convert.ToDouble(azTmp[ 0 ]); 
Am
= Convert.ToDouble(azTmp[ 1 ].Substring( 0 , 2 )); 
As
= Convert.ToDouble(azTmp[ 1 ].Substring( 2 , 2 )); 

// Dbg.Text =Convert.ToString(Ad) + " " + Convert.ToString(Am) + " " +Convert.ToString(As); 

sp_x
= double .Parse(sx.Text); 
sp_y
= double .Parse(sy.Text); 
dis
= double .Parse(d.Text); 

azm
= (Ad + Am / 60.0 + As / 3600 *  Math.PI / 180
p_x
= ( double )System.Math.Cos( azm)  *  dis + sp_x; 
p_y
= ( double )System.Math.Sin( azm)  *  dis + sp_y; 
px.Text
= p_x.ToString(); 
py.Text
= p_y.ToString (); 
point3 p3
= new  point3(); 
p3.x
= 1.256 ;p3.y  = 2.356 ;p3.h = 100
Dbg.Text
= p3.ToString(); 


// 3、Convert类 

private   void  button1_Click( object  sender, System.EventArgs e) 

double  sp_x,sp_y,dis,azm,p_x,p_y; 
string  Alpha; string [] azTmp; 
double  Ad,Am,As;  //  度、分、秒 

Alpha
= az.Text; 
azTmp
= Alpha.Split( ' . ' ); 
Ad
= Convert.ToDouble(azTmp[ 0 ]); 
Am
= Convert.ToDouble(azTmp[ 1 ].Substring( 0 , 2 )); 
As
= Convert.ToDouble(azTmp[ 1 ].Substring( 2 , 2 )); 

// Dbg.Text =Convert.ToString(Ad) + " " + Convert.ToString(Am) + " " +Convert.ToString(As); 
sp_x = double .Parse(sx.Text); 
sp_y
= double .Parse(sy.Text); 
dis
= double .Parse(d.Text); 

azm
= (Ad + Am / 60.0 + As / 3600 *  Math.PI / 180
p_x
= ( double )System.Math.Cos( azm)  *  dis + sp_x; 
p_y
= ( double )System.Math.Sin( azm)  *  dis + sp_y; 
px.Text
= p_x.ToString(); 
py.Text
= p_y.ToString (); 
point3 p3
= new  point3(); 
p3.x
= 1.256 ;p3.y  = 2.356 ;p3.h = 100
Dbg.Text
= p3.ToString(); 
posted on 2006-10-27 08:58 ZmStudio.CN 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/zmstudio/archive/2006/10/27/541428.html

C#中,数据类型转换是指将数据从一种类型转换为另一种类型的过程。这种转换的意义主要体现在以下几个方面: 1. **类型安全**:数据类型转换可以确保数据在转换过程中保持一致性和准确性。类型安全的转换有助于避免因类型不匹配导致的运行时错误。 2. **扩展性与灵活性**:通过数据类型转换,开发者可以在不同数据类型之间进行桥梁式的连接,从而使得代码更加灵活和可维护。例如,将整数类型转换为浮点数类型可以用于需要更精确数值计算的场景。 3. **提高性能**:在某些情况下,开发者可以通过优化数据类型转换来提高程序的性能。例如,将对象转换为更小的数据类型可以减少内存的使用。 4. **交互与兼容**:在与外部系统交互或者处理不同数据来源时,数据类型转换有助于数据格式的统一与兼容,确保数据能够被正确处理。 5. **符合业务需求**:不同的业务场景可能会对数据类型有不同的要求,通过数据类型转换可以使得数据符合特定的业务逻辑和规则。 在C#中,数据类型转换可以分为隐式转换和显式转换两种。 - **隐式转换**:是编译器自动进行的转换,无需编写额外代码,这种转换是安全的,不会导致数据丢失。例如,从int转换到long。 - **显式转换**:需要程序员使用转换运算符(如`checked`、`unchecked`、`as`、`is`、`(type)`等)来进行的转换,这种转换可能会有数据丢失的风险,因此需要程序员显式指定转换逻辑。例如,从long转换到int可能会丢失数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值