Parse类型转换

Parse()函数

int、double都能调用Parse()函数,Parse(string str);如果转换成功就成功,失败就会抛出一个异常;

TryParse()函数

相应地有一个TryParse函数,bool TryParse(string str,out int a);这里的out参数相当于c++中的&,引用(区别是c#的这个方法里必须对a赋值,且所有分支都要赋值)。如果能够转,就返回True,并把值放在a里面,如果失败的话a赋值为0,double也是这样。

测试代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace parse类型转换
{
class Program
{
static void Main(string[] args)
{
//使用convert进行转换,过得去就成功了,过不去就抛异常;convert内部调用的是类型的.Parse();
double number = double.Parse("123.2");
Console.WriteLine(number);
Console.ReadKey();
//int.tryParse;尝试着讲一个字符串转换成int类型;使用tryParse进行类型转换,成功的时候返回true,并把值返回到第二个参数里面。失败时,返回false,将第二个参数赋值为0
double num = 10;
bool result = double.TryParse("ab123abc",out num);
Console.WriteLine(num);
Console.ReadKey(); }
}
}

Convert类型转换

应用场景

如果两个类型变量不兼容,比如string与int或stirng与double。这个时候可以使用一个叫做Convert的转换工厂进行转换。使用Convert进行类型转换的时候要注意面儿上必须过得去。使用convert进行转换,过得去就成功了,过不去就抛异常;convert内部调用的是类型的.Parse();

测试代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace convert类型转换
{
class Program
{
static void Main(string[] args)
{
//如果两个类型变量不兼容,比如string与int或stirng与double。这个时候可以使用一个叫做Convert的转换工厂进行转换。
//使用Convert进行类型转换的时候要注意面儿上必须过得去。
string s = "123";
double d = Convert.ToDouble(s);
int n = Convert.ToInt32(s);
Console.WriteLine(d);
Console.WriteLine(n);
Console.ReadKey();
}
}
}

应用

让用户输入姓名 语文 数学 英语 三门课的成绩,然后给用户显示 xx 你的总成绩是xx分,平均成绩是xx分;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace Convert应用
{
class Program
{
static void Main(string[] args)
{
//让用户输入姓名 语文 数学 英语 三门课的成绩
//然后给用户显示 xx 你的总成绩是xx分,平均成绩是xx分;
Console.WriteLine("请输入你的姓名");
string name = Console.ReadLine();
Console.WriteLine("请输入你的语文成绩");
double chineseScore = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("请输入你的数学成绩");
double mathScore = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("请输入你的英语成绩");
double EnglishScore = Convert.ToDouble(Console.ReadLine());
double sum = chineseScore+mathScore+EnglishScore;
double average =sum/3;
Console.WriteLine("{0},你的总成绩为{1},平均成绩为{2:0.00}", name, sum, average);//这里使用了一个小技巧,通过:0.00限制了输出精度;
Console.ReadKey();
}
}
}

c#中的类型转换的更多相关文章

  1. JavaScript中数据类型转换总结

    JavaScript中数据类型转换总结 在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换. 1, 显式数据类型转换 a:转数字: 1)Number转换: 代码: var a = " ...

  2. java中强制类型转换

    在Java中强制类型转换分为基本数据类型和引用数据类型两种,这里我们讨论的后者,也就是引用数据类型的强制类型转换. 在Java中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需 ...

  3. JS中String类型转换Date类型 并 计算时间差

    JS中String类型转换Date类型 1.比较常用的方法,但繁琐,参考如下:主要使用Date的构造方法:Date(int year , int month , int day)<script& ...

  4. SQL中的类型转换

    SQL中的类型转换一直是以块心病,因为用得比较少,所以每次想用的时候都要想半天,恰好这段时间比较空,整理整理.今天写个标题先.

  5. Struts2中的类型转换

    1.     Struts2中的类型转换 我们知道通过HTTP提交到后台的数据,都是字符串的形式,而我们需要的数据类型当然不只字符串类型一种.所以,我们需要类型转换! 在Struts2中,类型转换的概 ...

  6. java中的类型转换

    java中的类型转换分为两种 自动类型转换 要实现数据的自动类型转换必须同时满足下面两个条件 两种数据类型彼此兼容 目标类型的取值范围大于原类型范围 强制类型转换 当两种数据类型彼此不兼容,或者说目标 ...

  7. HQL语句中数据类型转换,及hibernate中createQuery执行hql报错

    一.HQL语句中数据类型转换: 我们需要从数据库中取出序号最大的记录,想到的方法就是使用order by子句进行排序(desc倒序),然后取出第一个对象,可是当初设计数据库时(我们是在原来的数据库的基 ...

  8. Java中数据类型转换&基本类型变量和对象型变量

    1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型    byte,short,int,lo ...

  9. C语言中强制类型转换总结

    C语言中强制类型转换总结  ● 字符型变量的值实质上是一个8位的整数值,因此取值范围一般是-128-127,char型变量也可以加修饰符unsigned,则unsigned char 型变量的取值范围 ...

  10. c#中的里氏转换和Java中强制类型转换在多态中的应用

    在c#中: 注意: 子类并没有继承父类的构造函数,而是会默认调用父类那个无参数的构造函数. 如果一个子类继承了一个父类,那么这个子类除了可以使用自己的成员外,还可以使用从父类那里继承过来的成员.但是父 ...

随机推荐

  1. about tomcat ssl

    http://www.kuqin.com/shuoit/20140615/340573.html 1SSL单向认证概念 当客户端(服务请求方)向服务端(服务提供方)发起请求时,服务器端需要向客户端提供 ...

  2. redis存储对象,实体类新加字段空指针问题处理

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  3. uva 12544 无向图最小环

    思路:这题的N有500,直接floyd肯定超时. 我的做法是每次枚举一个点,求出包含这个点的最小环. 对所有最小环取最小值.求包含某个点的最小环我用的是启发式搜索,先以该点求一次spfa,然后dfs解 ...

  4. ankhSVN安装后,VS2010使用

    Tool->option->Source control->plug-in selection,选择ankhSVN AnkhSvn-2.5.12478.zip

  5. MVC常用 ActionResult

    1.EmptyResult 2.ContentResult 3.FileResult 4.JavaScriptResult 5.JsonResult 6.HttpStatusCodeResult 7. ...

  6. vpn连接成功后,本地无法连接外网

    把在远程网络上使用默认网关前面的对勾取消掉,确定就ok啦...

  7. SDWebImage缓存清理

    //计算缓存大小 [SDImageCache sharedImageCache] getSize] //清理缓存 SDImageCache *sd = [[SDImageCache alloc]ini ...

  8. Cocos2d-JS坐标系

    在图形图像和游戏应用开发中坐标系是非常重要的,我们在Android和iOS等平台应用开发的时候使用的二维坐标系它的原点是在左上角的.而在Cocos2d-JS坐标系中它原点是在左下角的,而且Cocos2 ...

  9. TouchAndGuest触摸事件和手势

    ////  nextViewController.m#import "nextViewController.h"#import "my.h"@interface ...

  10. UI1_ScrollViewHomeWork

    // // AppDelegate.m // UI1_ScrollViewHomeWork // // Created by zhangxueming on 15/7/13. // Copyright ...