C sharp (#) 数据类型获取方式
作者:勤奋的大熊猫 发布时间:2022-03-29 00:33:10
标签:C,sharp,数据类型
C sharp (#) 数据类型获取
这里研究一下关于c#中如何获取变量类型的问题。
首先我们研究一下如何获取单个变量的类型
// 问题一:获取单个变量的类型
// 方法一:使用GetType()方法
public static void JudgeType()
{
? ? int element = 5;
? ? // 我们应该知道, GetType()会返回一个类型,因此我们需要用类型变量来存储它
? ? Type type = element.GetType();
? ? // 如果我们需要判断这个类型与其他的类型,比如与int类型,那么我们应该与typeof(int)进行比较
? ? if (type == typeof(int))
? ? {
? ? ? ? Console.WriteLine("Is the type of element int? {0}", "Yes");
? ? }
}
// =============================================
// 方法二:使用is方法
public static void JudgeType()
{
? ? // 这里为了避免warning的出现,我们使用object来定义变量
? ? object element = 5;
? ? // 使用is来直接判断变量的类型
? ? if (element is int)
? ? {
? ? ? ? Console.WriteLine("Is the type of element int? {0}", "Yes");
? ? }
}
接下来我们研究一下如何获取列表变量的类型
// 问题二: 获取列表的类型
// 方法一:使用GetType()方法
public static void JudgeType()
{
? ? // 创建一个列表对象
? ? var list = new List<int>() { 1, 2 };
? ? Type type = list.GetType();
? ? if (type == typeof(List<int>))
? ? {
? ? ? ? Console.WriteLine("Is the type of list List<int>? {0}", "Yes");
? ? }
}
// =============================================
// 方法二:使用is方法
public static void JudgeType()
{
? ? var list = new List<int>() { 1, 2 };
? ? if (list is List<int>)
? ? {
? ? ? ? Console.WriteLine("Is the type of list List<int>? {0}", "Yes");
? ? }
}
// =============================================
// 方法三:使用GetType()和GetGenericArguments()方法
public static void JudgeType()
{
? ? var list = new List<int>() { 1, 2 };
? ? Type[] type = list.GetType().GetGenericArguments();
? ? if (type[0] == typeof(int))
? ? {
? ? ? ? Console.WriteLine("Is the type of list List<int>? {0}", "Yes");
? ? ? ? Console.WriteLine("Is the type of element in list int? {0}", "Yes");
? ? }
}
// =============================================
// 方法四: 使用GetType()和ToString()方法
public static void JudgeType()
{
? ? var list = new List<int>() { 1, 2 };
? ? foreach (var element in list)
? ? {
? ? ? ? Type type1 = element.GetType();
? ? ? ? if (type1.ToString() == "System.Int32")
? ? ? ? {
? ? ? ? ? ? Console.WriteLine("Is the type of element in list int? {0}", "Yes");
? ? ? ? }
? ? }
}
// =============================================
// 方法五: 使用GetType()和Name方法
public static void JudgeType()
{
? ? var list = new List<int>() { 1, 2 };
? ? string type_ = list[0].GetType().Name;
? ? Console.WriteLine(type_);
? ? if (type_ == "Int32")
? ? {
? ? ? ? Console.WriteLine("Is the type of element in list int? {0}", "Yes");
? ? }
}
C#的五大数据类型
1.类(class):如Windows,Form,Console,String
2.结构体(Structures):如Int32,Int64,Single,Double
3.枚举(Enumerations):如HorizontalAlignment,Visibility
4.接口(Interfaces)
5.委托(Delegates)
C#类型的派生谱类
来源:https://blog.csdn.net/u011699626/article/details/109164685


猜你喜欢
- 在 App 的开发过程中,ListView 控件是比较常用的控件之一。掌握它的用法,能帮助我们在一定程度上提高开发效率。本文将会介绍 Lis
- 目录一、ThreadLocal简介二、ThreadLocal简单使用三、ThreadLocal的实现原理1、set方法源码2、get方法源码
- 一、树1.1 概念与线性表表示的一一对应的线性关系不同,树表示的是数据元素之间更为复杂的非线性关系。直观来看,树是以分支关系定义的层次结构。
- @ApiModel使用场景在实体类上边使用,标记类时swagger的解析类概述提供有关swagger模型的其它信息,类将在操作中用作类型时自
- 这其实是去年校招时我遇到的一道阿里巴巴的笔试题(承认有点久远了-。-),嗯,如果我没记错的话,当时是作为Java方向的一道选做大题。当然题意
- 目录@CachePut设置的key值无法与@CacheValue的值匹配缓存注解key的基本数据类型要求必须要统一Spring-Cache
- 初学spring,我在dao层初始化c3p0的时候,使用@Resource注解新建对象是发现注入为null,告诉我 java.la
- 如下所示:import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.
- 现在我们常见的一些关于Linux的系统很多,但是使用的更多的一般都是CentOS和Ubuntu,今天我就来记录一下关于centos下java
- 本文实例讲述了C#在WinForm中使用WebKit传递js对象实现与网页交互的方法。分享给大家供大家参考,具体如下:有个项目要使用WebB
- 功能描述1、创建扑克牌。包括四种花色(黑桃,红心,梅花,方块),十三种点数(2-10,J,Q,K),不考虑大小王。2、创建两个玩家。包括玩家
- public void add(intindex, Eelement)从index索引的位置添加element元素,后面的元素都往
- 本文实例为大家分享了Java实现简单员工管理系统的具体代码,供大家参考,具体内容如下代码如下:import java.util.*;publ
- 一、前言本文主要是从官方文档中筛选出一些常见的适配项,若有任何纰漏或需要补充的,欢迎大家在评论区指出。二、版本适配1. 限制 HTTP 网络
- 本文介绍了maven下载jar包改用阿里云maven库的方法,分享给大家,具体如下:修改maven安装路径中conf文件夹下的setting
- 一、网络爬虫的基本知识网络爬虫通过遍历互联网络,把网络中的相关网页全部抓取过来,这体现了爬的概念。爬虫如何遍历网络呢,互联网可以看做是一张大
- DozerDozer是一种Java Bean到Java Bean的映射器,递归地将数据从一个对象复制到另一个对象,它是一个强大的,通用的,灵
- 如何从C#获取字符串中汉字的个数?C#中使用正则表达式来从字符串中判断出汉字,然后计数,从而得到字符串中的汉字个数。先看这段代码://首先引
- 前言不得不说,JSP 现在已经是一门十分老旧的技术了,学习编程时,不仅要学习优秀的前言技术,还要对基础有一定的把握,所以学习 JSP 时,我
- 生成唯一值的方法很多,下面就不同环境下生成的唯一标识方法一一介绍,作为工作中的一次总结,有兴趣的可以自行测试:一、在 .NET 中生成1、直