若索引高于c#中的字符串,那个么和java的子字符串有什么相似之处?

若索引高于c#中的字符串,那个么和java的子字符串有什么相似之处?,c#,java,C#,Java,在java中,子字符串函数(index,lenght)的索引可以高于lenght System.out.print("BCDABCD".substring(3 , 7)); 此输出为“ABCD” 我不要这个 Console.Writeline("BCDABCD".substring(3 , 4)); 对于ex,如果我想生成: for i = 0 to 63 {Console.Writeline("BCDABCD".substring(i , i + 1 ))); 如何在c#?中实现这一点J

在java中,子字符串函数(index,lenght)的索引可以高于lenght

System.out.print("BCDABCD".substring(3 , 7));
此输出为“ABCD”

我不要这个

Console.Writeline("BCDABCD".substring(3 , 4));
对于ex,如果我想生成:

for i = 0 to 63 {Console.Writeline("BCDABCD".substring(i , i + 1 )));
如何在c#?

中实现这一点Java中的第二个参数不是长度,而是索引的(独占)上界。而在.NET中,的第二个参数实际上是长度

因此,在Java中调用
foo.substring(x,y)
时,这相当于.NET中的
foo.substring(x,y-x)
。。。你真的需要考虑到这一点

现在还不清楚您想要做什么,但是您的循环在Java中也无法工作。如果您真的只想从字符串中获取一个字符,只需使用索引器和
%

string text = "BCDABCD";
for (int i = 0; i < 63; i++)
{
    Console.WriteLine(text[i % text.Length]);
}
string text=“BCDABCD”;
对于(int i=0;i<63;i++)
{
Console.WriteLine(文本[i%text.Length]);
}
编辑:鉴于评论,我怀疑您只是想:

for (int i = 0; i < 63; i++)
{
    Console.WriteLine("BCDABCD".Substring(3 - (j & 3), 4));
}
for(int i=0;i<63;i++)
{
控制台写入线(“BCDABCD”。子字符串(3-(j&3),4));
}
。。。换句话说,长度将始终为4。

Java中的第二个参数不是长度,而是索引的(独占)上限。而在.NET中,的第二个参数实际上是长度

因此,在Java中调用
foo.substring(x,y)
时,这相当于.NET中的
foo.substring(x,y-x)
。。。你真的需要考虑到这一点

现在还不清楚您想要做什么,但是您的循环在Java中也无法工作。如果您真的只想从字符串中获取一个字符,只需使用索引器和
%

string text = "BCDABCD";
for (int i = 0; i < 63; i++)
{
    Console.WriteLine(text[i % text.Length]);
}
string text=“BCDABCD”;
对于(int i=0;i<63;i++)
{
Console.WriteLine(文本[i%text.Length]);
}
编辑:鉴于评论,我怀疑您只是想:

for (int i = 0; i < 63; i++)
{
    Console.WriteLine("BCDABCD".Substring(3 - (j & 3), 4));
}
for(int i=0;i<63;i++)
{
控制台写入线(“BCDABCD”。子字符串(3-(j&3),4));
}

。。。换句话说,长度将始终为4。

在java中,这里是我的函数(int j=0;j<64;j++){“BCDABCD”。子字符串(3-(j&3),7-(j&3))}如何使用答案解决方案做到这一点?@studentofmp:查看我编辑的答案。(如果你告诉我们你真正想要什么样的输出,这会有帮助的…)在java中,我的代码可以生成:DABC DABC CDAB BCDAX@studentofmp:对。您应该从我的代码(第二个代码段)中获得相同的输出。在java中,这里是(int j=0;j<64;j++){“BCDABCD”的函数。子字符串(3-(j&3),7-(j&3))}如何使用答案解决方案做到这一点?@studentofmp:查看我编辑的答案。(如果你告诉我们你真正想要什么样的输出,这会有帮助的…)在java中,我的代码可以生成:DABC DABC CDAB BCDAX@studentofmp:对。您应该从我的代码中获得相同的输出(第二个代码段)。