我想知道我们是否可以将字符串的索引作为Long数据类型。
var i=long.Parse(Console.ReadLine());
var result = testString[i-1];
第二行给出了错误,说“'string.this [int]'的最佳重载方法匹配有一些无效的参数。”
答案 0 :(得分:0)
不,它无法接受long
。唯一的重载接受int
索引器。您需要将代码更改为int.Parse()
而不是long.Parse()
答案 1 :(得分:0)
没有办法将long作为数组的索引传递,编译器不允许这样做。
解决方法可以将long转换为int,这称为窄转换。
var result= testString[(int)i)];
答案 2 :(得分:0)
对于大多数集合类型,你不能使用long(你还没有指定testString是什么)。
解决这个问题的一种方法是将字符串分离为多部分/多维数组,然后使用乘数来获取要检查的数组部分。
例如: 你的索引是100,000,你有一系列短裤(长度为32,767)......
<?= Html::tag('span', '', [
'class' => 'glyphicon glyphicon-bell' ,
'aria-hidden' => true,
'onclick' => "$('#YOUR_FORM_ID').yiiActiveForm('submitForm')" , 'cursor'
])?>
这可能不是最有效的方法,但它是一种解决方法。