【问题标题】:How to make a string circular in java如何在java中使字符串循环
【发布时间】:2014-05-12 11:21:20
【问题描述】:

例如,我有一个字符串: "abcdefgh"

我希望它把一个字符串输出成三个字母的子字符串,这样它就变成了:

"abc"
"bcd"
"cde"
"def"
"efg"
"fgh"
"gha"
"hab"

我目前有代码:

      for (*length of string*){
      (str.substring(i,i+2));

这是因为我是字符串的计数器。

话虽如此,我将如何使它将字符串视为循环,以便我可以获得子字符串“GHA”和“HAB”?

谢谢

【问题讨论】:

  • 从字符串 "abcdefghabcdefgh" 的两倍中取出前 8 个子字符串

标签: java string substring


【解决方案1】:

试试看:

int length = 3;
String input = "abcdefgh";
String circural = input + input.substring(0, length - 1);

for (int i = 0; i < input.length(); i++) {
    String part = circural.substring(i, i + length);
    System.out.println(part);
}

输出:

abc
bcd
cde
def
efg
fgh
gha
hab

【讨论】:

  • 为什么不用input + input 而不是input + input.substring(0, length)circural 无论如何都会是一个新字符串,不是吗?
  • @Joffrey 因为我们不需要abcdefghabcdefgh,只需要abcdefghab
  • 好吧,我没看到你参数化了 2,length 实际上是子字符串长度,而不是输入长度;)
猜你喜欢
  • 2015-08-16
  • 2015-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多