C#中数组,类型转换,

博客介绍了ASP.NET页面中数据转换的相关内容,包括字符串输出、DateTime值转换及格式化代码含义,还列举了Convert函数。同时阐述了常量赋值规则,详细介绍了结构化的数据类型,如数组(含多维、不规则数组)、结构和枚举的定义与使用。

当数据转换到asp.net页面时,大部分都是以文本的形式存在的。有时候为了输出,单单使用显示或者隐式转换都是不行的,就需要本节说到的数据转换。

字符串输出:

int intAge=21;

string strAge=intAge.ToString();

转换DateTime值时,可以通过在括号内放置一个可选的参数来指定时间的输出样式。eg:dateCou.ToString(“d“);

格式化代码及其含意:

D——以下列格式给出日月年:Thursday,september 21,2001

G——09/22/2001 09:12:23

T——给出时间:01:23:22 时 分 秒

t——给出时分:01:23

d——mm/dd/yyyy

数据输入

Convert函数大全:

Convert.ToBoolean();
Convert.ToByte();
Convert.ToChar();
Convert.ToDateTime();
Convert.ToDecimal();
Convert.ToDouble();
Convert.ToInt16();
Convert.ToInt32();
Convert.ToInt64();
Convert.ToSByte();
Convert.ToSingle();
Convert.ToUInt16();
Convert.ToUInt32();
Convert.ToUInt64();

七、常量

赋值:const int AbsoluteZero=-273;

必须在类定义中声明,而不能超脱类来定义。

八、结构化的数据类型

1、数组

声明一个数组:string [] strSZ;

为了生成一个已声明的数组,必须进行初始化:strSZ=new string[5];

声明的同时进行初始化:string [] asp=new string[44];

数组的下标从0开始。

变量的赋值:asp[0]=“sdf“;

asp[2]=“sdf“;

……

或者:

string [] asp=new string[]{“asdf“,“ASDFAS“};

string [] asp=new string[2]{“asdf“,“ASDFAS“};

string [] asp={“asdf“,“ASDFAS“};

看实例:

<script runat="Server" language="C#">
void Page_Load()
{
 string[] strArrayDetails = new string[3];
 int intLoop;

 strArrayDetails[0] = text1.Text;
 strArrayDetails[1] = text2.Text;
 strArrayDetails[2] = text3.Text;

 Message1.Text = strArrayDetails[0];
 Message2.Text = strArrayDetails[1];
 Message3.Text = strArrayDetails[2];

}
</script>

<html>
  <head>
    <title>Text Box Example</title>
  </head>
  <body>
    <asp:label id="Message1" runat="server" />
    <br />
    <asp:label id="Message2" runat="server" />
    <br />
    <asp:label id="Message3" runat="server" />
    <br />
    <form runat="server">
      Please enter your name:
      <asp:textbox id="text1" runat="server" />
      <br /><br />
      Please enter your address:
      <asp:textbox id="text2" runat="server" rows=5 textmode="multiline" />
      <br /><br />
      Please enter your chosen password:
      <asp:textbox id="text3" runat="server" textmode="password" />
      <br /><br />
      <input type="Submit">
    </form>
  </body>
</html>

多维数组:

string [,] strStr1=new string[3,2];

c#不限制数组的大小,只有内存来限制它,然而在实际使用过程中,当有超过三维以上的数组时,就需要考虑其它的解决方案,比如对象。

不规则数组:

string [] strNre=new string[2][];

string strNre[0]=new string[8];

string strNre[1]=new string[2];

2、结构

定义:struct nameabc{……};

3、枚举

enum Gender{male=0,female=1};

### C#数组类型的强制换 在 C# 中,对于数组类型的强制换主要涉及两个方面:一是基础数据类型之间的相互换;二是通过特定的方法实现复杂对象间的换。当处理基本数据类型时,可以直接利用隐式或显式的类型转换机制来完成数组元素换。 然而,在尝试对整个数组进行整体性的类型转换时,则需要更加谨慎的操作方式[^2]。下面提供了一个简单的例子展示如何将 `int[]` 类型的数组换成 `double[]`: ```csharp // 定义整数数组并初始化 int[] intArray = { 1, 2, 3 }; // 创建一个新的 double 数组用于存储换后的结果 double[] doubleArray = new double[intArray.Length]; // 使用循环遍历原数组并将每个元素换为目标类型后存入新数组 for (int i = 0; i < intArray.Length; ++i) { doubleArray[i] = Convert.ToDouble(intArray[i]); } ``` 需要注意的是,上述代码片段展示了最直接的方式来进行逐项换,并不是真正意义上的“强”。真正的强通常指的是编译器能够识别并且支持的基础类型间的安全换过程。如果要实现更复杂的自定义类型之间(比如自定义结构体或类)的换,则可能需要用到用户定义的换操作符重载功能。 此外,还可以考虑使用 LINQ 表达式简化这一流程: ```csharp using System.Linq; ... var doubleArrayLinq = intArray.Select(x => (double)x).ToArray(); ``` 此方法不仅简洁明了而且易于维护。不过值得注意的一点是,无论是采用传统的 foreach 循环还是现代的 LINQ 查询语法,这些都属于创建新的目标类型实例的过程而非严格意义上讲的“强制换”。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值