创建一个for循环以检测彼此旁边是否有2个相同的字符

时间:2014-04-29 07:00:51

标签: java for-loop

我想弄清楚如何制作for loop来检测在这种情况下是否有2个相同的字母g彼此相邻,会有多个实例字符串中的“g”。

这就是我所拥有的,

Scanner keyboard = new Scanner(System.in);
String a;
a = keyboard.next();


if (a.charAt(a.indexOf(g) + 1 ) == "g"){
    for ( ??  ; ??   ; ??  ){
    System.out.println("True");
    System.out.println("False");
    }
}
else System.out.println("False");`

我不确定我想要使用的一些价值观或概念,我只熟悉大部分基础知识。

3 个答案:

答案 0 :(得分:0)

  Scanner keyboard = new Scanner(System.in);
  String a;
  a = keyboard.next();

  char[] chararray = a.toCharArray();
  char  temp = '\0';
  boolean repeat = false;

  for (char s : chararray) {
      if(s==temp)
      {
          System.out.println("repeat");
          repeat = true;
          break;
      }
      temp = s;
  }
  System.out.println(repeat);

答案 1 :(得分:0)

你可以试试这个,完全没有任何循环:

Scanner keyboard = new Scanner(System.in);
String a;
a = keyboard.next();
if (a.indexOf("gg") != -1) 
    System.out.println("True");
else
    System.out.println("False");
keyboard.close();

如果您希望能够对事件的位置做某事,我已经使用了indexOf原因。

如果你对" gg"的位置不感兴趣?在你的字符串中(如果它出现)你可以用a.indexOf("gg") != -1取代a.contains("gg"),如Vikiiii所说。

答案 2 :(得分:0)

使用正则表达式查找是否有两个相同的字符彼此相邻。

只需检查:https://stackoverflow.com/a/4725079/2182503