
使用split()方法可以将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
示例代码:
String str =" a1jpg,a2jpg,a3jpg";String[] arr = strsplit(",");//分割字符串得到数组
List list = javautilArraysasList(arr);//字符数组转list
listget(0)//获取数组下标0位置的值
matlab的find()函数可以找出参数中非零元素的索引(即下标),因此获取矩阵中某个元素的下标的实现方法为:在matlab命令窗口输入find()函数。具体应用举例如下:
1、在matlab命令窗口输入一个示例矩阵:A = [1 2 3;3 4 5;5 6 7],输入及显示如下:
2、继续在命令窗口输入:[m,n] = find(A==2),表示二维矩阵A中等于2的元素的行列位置分别赋值给m和n,输出结果为:
即表示元素2在矩阵A的第1行第2列。
3、为了测试矩阵中存在多个元素的情况,例如查找元素3的下标,在命令窗口输入: [m,n] = find(A==3),此时输出结果为:
因为矩阵A中有两个元素都等于3,所以结果包含两组位置,分表表示第2行第1列和第1行第3列。
string[] str = new string[] {"1","2","3","4","5","6"} ; //声明字符串数据str
ArrayList arr = new ArrayList(str); //声明一个ArrayList并载入str数组
int index = arrIndexOf("2"); //通过indexof函数找到2所在数组中的位置
MessageBoxShow("2在字符串数组第 " + (index + 1)ToString() + " 个位置!"); //然后d出数组中第几个数值是2(因为数组是从0开始的,所以这里使index + 1); 只取数组下标的话,可以将 +1这个 *** 作省去!就是
MessageBoxShow("2所在数组下标值为: " + indexToString()); //获取数组下标
你只知道元素值,还是知道元素值的地址。
如果是只知道元素值,那只有用循环查找了。
如果是知道元素值的地址,那可以求出单个元素字节长度和数组首地址,
(被选元素地址
-
首地址)/(单个元素字节长度)。(注意:这里没有-1,是因为数组下标从0标记的)
例子:
#include
int
main()
{
int
i,
p,
q,
n,
a[10];
for(
i=0;
i<10;
i++
)
a[i]
=
i;
//求a[4]=4的下标
for(
i=0;
i<10;
i++
)
if(
a[i]
==
4
)
printf("元素4的下标为:%d\n",
i);
//第二种情况,假设我们不知道被选元素a[4],p=&a[4]中间经过了多重转换,已经不记得下标了
p
=
&a[4];
q
=
&a[0];
n
=
sizeof(&a[0]);
printf("下标为:%d",
(p-q)/n);
return
0;
}
一步,打开eclipse开发工具,新建静态页面lastIndexOfhtml,如下图所示:
第二步,在<script></script>内编写代码,声明两个变量E1和E2,如下图所示:
第三步,预览该静态页面,打开浏览器控制台,查看打印结果,如下图所示:
第四步,再次修改代码,lastIndexOf方法内第一个参数设置为数组中没有的元素,如下图所示:
第五步,再次预览该静态页面,发现打印的结果为“-1”,说明没有查找到该元素,如下图所示:
第六步,再次修改代码,添加第二个参数,从倒数第二个开始查找,如下图所示:
'arrPtr:数组指针,dims:数组维数,pData:元素指针
Dim arrPtr As Long, dims As Long, pData As Long
'i:循环变量,carry:进位标记
Dim i As Long, carry As Integer
'取得数组维数
CopyMemoryArr arrPtr, Arr, 4
dims = SafeArrayGetDim(arrPtr)
ReDim Index(dims - 1) As Long
Do
'取得某个下标处元素的指针
SafeArrayPtrOfIndex arrPtr, Index(0), pData
'与传入的元素的指针比较
If pData = VarPtr(Element) Then
GetIndex = True
Exit Function
End If
'数组下标加1
Index(dims - 1) = Index(dims - 1) + 1
'检查下标是否溢出
carry = 0
For i = dims - 1 To 1
Index(i) = Index(i) + carry
If Index(i) > UBound(Arr, i + 1) Then
Index(i) = 0
carry = 1
End If
Next i
'最高位单独处理,防止被清0
Index(0) = Index(0) + carry
'检查是否搜索完毕,退出循环
If Index(0) > UBound(Arr, 1) Then Exit Do
Loop
GetIndex = False
End Function
如果你要获得数组的多个值的下标,那你应该循环,然后根据条件获得对应值
或者
如果你的数组为array,要取值为10的下标,那你可以这样
var reault=arraySelect((c,i)=>
{
if(c==10)
return new {c,i};
return new {c,-1};
}ToList();
Foreach(var s in resultWhere(c=>ci!=-1))
{
//si就是下标
}
PHP 获取数组指定值的位置或下标代码如下:
<php
//定义一个数组
$array = array(0 => 'a', 1 => 'b', 2 => 'c', 3 => 'd');
//使用 array_search('要搜索的值',数组);
$key = array_search('b', $array); // $key = 1;
$key = array_search('a', $array); // $key = 0;
>
扩展资料
php 中的数组实际上是一个有序图。图是一种把 values 映射到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。
因为可以用另一个 php 数组作为值,也可以很容易地模拟树。解释这些结构超出了本手册的范围,但对于每种结构至少会发现一个例子。要得到这些结构的更多信息,建议参考有关此广阔主题的外部著作。
对于任何的类型:整型、浮点、字符串、布尔和资源,如果将一个值转换为数组,将得到一个仅有一个元素的数组(其下标为 0),该元素即为此标量的值。如果将一个对象转换成一个数组,所得到的数组的元素为该对象的属性(成员变量),其键名为成员变量名。
如果将一个 NULL 值转换成数组,将得到一个空数组。
以上就是关于如何用Split将字符串转换为数组并获取数组下标值全部的内容,包括:如何用Split将字符串转换为数组并获取数组下标值、请问matlab中如何得到满足条件的元素的下标、C# 取已知数组元素的数组下标,有没有函数可以直接完成啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)