2018-9-30-C#-传入-params-object-长度
title | author | date | CreateTime | categories |
---|---|---|---|---|
C# 传入 params object 长度
|
lindexi
|
2018-09-30 18:33:20 +0800
|
2018-8-20 19:26:7 +0800
|
C#
|
刚刚 LiesAuer 大神问了一个问题,如果在 params object 传入 object 数组,那么拿到的值是的长度是多少
我做了测试在传入不同的值可能拿到不同的长度
先来说总结
传入一个数组进入
params object[]
会解析数组,传入的数组有多少元素就解析出多少元素传入一个数组和另一个元素,就会将数组解析为一个元素
传入一个数组强转为 object ,就会解析为传入一个元素
先来创建一个控制台项目,在项目添加一个空白的方法,这个方法输出参数长度
private static void TracinozeSallraymear(params object[] jearsawelSekerdis)
{
Console.WriteLine(jearsawelSekerdis.Length);
}
尝试传入不同的值来测试长度
var foo = new object[3] {"lindexi", "123", "csdn"}; TracinozeSallraymear(foo);
这里可以说传入的是 一个 数组,也就是参数是 1 ,也可以说是传入 3 个元素,我尝试运行了一下,输出的是 3 也就是拿到 3 个元素。
我又尝试使用 string 数组,请看下面
TracinozeSallraymear(new string[]
{
"lindexi", "123", "csdn"
});
上面的代码也是拿到 3 个元素。
但是如何将数组转为 object 就会输出 1 个元素
TracinozeSallraymear((object) foo);
//输出 1 个元素
如果我在一个数组和一个元素放在一起,那么就会自动将数组转换为元素,请看下面代码
TracinozeSallraymear(new string[]
{
"lindexi", "123", "csdn"
}, "lindexi.gitee.io");
//输出 2 个元素
// 一个是字符串数组,一个是字符串
如果我不使用数组,我使用 List 呢?
TracinozeSallraymear(new List<string>
{
"lindexi",
"123",
"csdn"
});
//输出 1 个元素
所以需要将一个数组传入params object[]
作为一个元素,简单的方法是将数组强转 object
或者再添加一个参数
参见:
c# - How to pass a single object[] to a params object[] - Stack Overflow
2018-9-30-C#-传入-params-object-长度的更多相关文章
- C# 传入 params object 长度
刚刚 LiesAuer 大神问了一个问题,如果在 params object 传入 object 数组,那么拿到的值是的长度是多少 我做了测试在传入不同的值可能拿到不同的长度 先来说总结 传入一个数组 ...
- 2018.12.30【NOIP提高组】模拟赛C组总结
2018.12.30[NOIP提高组]模拟赛C组总结 今天成功回归开始做比赛 感觉十分良(zhōng)好(chà). 统计数字(count.pas/c/cpp) 字符串的展开(expand.pas/c ...
- 2018.8.30 nowcoder oi赛制测试1
2018.8.30 nowcoder oi赛制测试1 普及组难度,发现了一些问题 A 题目大意:求斐波那契数列\(f(k-1)f(k+1)-f(k)^2\),范围极大 打表可得规律 其实是卡西尼恒等式 ...
- C# params object[] args 可以传多个参数,可以不限制类型(转)
C# params object[] args 可以传多个参数,可以不限制类型 using System;using System.Collections.Generic;using System.T ...
- C#使用 params object[] 将参数个数不一样的方法 集成一个
getChange("1"); getChange("1","2"); public string getChange(params obj ...
- vue props 传入对象Object,如果外层更改属性,默认里面是不更新,需要使用 this.$set(this.datese1, 'xsfaDateYear1', '')
vue props 传入对象Object,如果外层更改属性,默认里面是不更新,需要使用 this.$set(this.datese1, 'xsfaDateYear1', '')
- 2018.10.30 NOIp模拟赛T2 数字对
[题目描述] 小 H 是个善于思考的学生,现在她又在思考一个有关序列的问题. 她的面前浮现出一个长度为 n 的序列{ai},她想找出一段区间[L, R](1 <= L <= ...
- 2014.8.30.ref,out,params,enum,递归
(一)ref 函数形参变量的输入有两种方式:传值,传址.而ref则为传址.eg: static int Add(ref int n) { Console.WriteLine("Add---- ...
- 2018.10.30 bzoj4942: [Noi2017]整数(线段树压位)
传送门 直接把修改的数拆成logloglog个二进制位一个一个修改是会TLETLETLE的. 因此我们把303030个二进制位压成一位储存在线段树里面. 然后维护区间中最靠左二进制位不为0/1的下标. ...
- EZ 2018 03 30 NOIP2018 模拟赛(六)
链接:http://211.140.156.254:2333/contest/67 转眼间上次加回来的Rating又掉完了. 这次不知为何特别水,T1想了一段时间没想出来弃了,导致后面心态炸了. T2 ...
随机推荐
- nginx简单使用
nginx开启./nginx重启./nginx -s reload关闭./nginx -s stop或quit
- el-table中加载图片问题
<el-table-column label="头像" width="100"> <template scope="scope&qu ...
- 【NS2】常用资源(转载)
(一). NS常用基本网站 1. 寻求问题答案最好的地方. http://mailman.isi.edu/pipermail/ns-users/ 2. 柯老师的网站,包含很多非常实用资源:安装, ...
- SharpDX初学者教程第4部分:绘制三角形
原文 http://www.johanfalk.eu/blog/sharpdx-beginners-tutorial-part-4-drawing-a-triangle 现在我们有了一个Direct3 ...
- Java“类”的内存分配_case1
- Java练习 SDUT-1211_英文金曲大赛
英文金曲大赛 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 我们在"渊子数"的题目中已经了解了渊子 ...
- 终端安装opencv
安装 要想在 notebook 中安装和使用 OpenCV,请打开终端窗口(也被称为 Windows 用户的命令提示符窗口),并使用以下命令通过 conda 安装最新版本 (v3): conda in ...
- python 处理图像出现The lower bounary is neither an array of the same size and same type as src, nor a scalar in function inRange
在用python处理图像过程中出现如下错误 导致这个错误的原因是im是二维,而lower_green和upper_green是三维,所以无法用inRange处理. 由上图可以看出image本来是具有高 ...
- Libev源码分析02:Libev中的IO监视器
一:代码流程 在Libev中,启动一个IO监视器,等待该监视器上的事件触发,然后调用该监视器的回调函数.整个的流程是这样的: 首先调用ev_default_loop初始化struct ev_loop ...
- iptables 过滤条件(Matches)
iptables可让你设置多种过滤条件,但是某些条件需要核心有提供相关功能才行.Iptables本身內建一般性的Internet Protocol (IP) 过滤条件,也就是說,即时沒载入任何扩充模组 ...