str1 为多维数组各维长度
str2 为元素在多维数组中的下标
public int Get1d(String str1,String str2)
{
int d1=0;
int lenstr1=str1.length();
String dstr1[]=new String[lenstr1];
String dstr2[]=new String[lenstr1];
for(int i=0;i<str1.length();i++)
{
dstr1[i]=Character.toString(str1.charAt(i));
dstr2[i]=Character.toString(str2.charAt(i));
}
for(int i=0;i<lenstr1-1;i++)
{
int dq=1;
for(int m=i+1;m<lenstr1;m++)
{
dq=Integer.parseInt(dstr1[m])*dq;
}
d1=(Integer.parseInt(dstr2[i])*dq)+d1;
}
d1=d1+Integer.parseInt(dstr2[lenstr1-1]);
return d1;
}
str2 为元素在多维数组中的下标
public int Get1d(String str1,String str2)
{
int d1=0;
int lenstr1=str1.length();
String dstr1[]=new String[lenstr1];
String dstr2[]=new String[lenstr1];
for(int i=0;i<str1.length();i++)
{
dstr1[i]=Character.toString(str1.charAt(i));
dstr2[i]=Character.toString(str2.charAt(i));
}
for(int i=0;i<lenstr1-1;i++)
{
int dq=1;
for(int m=i+1;m<lenstr1;m++)
{
dq=Integer.parseInt(dstr1[m])*dq;
}
d1=(Integer.parseInt(dstr2[i])*dq)+d1;
}
d1=d1+Integer.parseInt(dstr2[lenstr1-1]);
return d1;
}
博客给出了一个将多维数组元素下标转换为一维索引的方法。通过传入多维数组各维长度和元素下标字符串,经一系列处理计算得出一维索引值,代码中包含字符串分割、循环计算等操作。
806

被折叠的 条评论
为什么被折叠?



