【发布时间】:2019-08-28 15:41:33
【问题描述】:
我是初学者。我的代码假设用户将输入一个带有 '*'(星号)的单词,如果 * 之前和之后的字符相同,则显示“相同”。例如,对于输入 ja'*'aisfun,我的输出应该是“相同的”,因为 * 介于相同的字母之间。我的代码似乎适用于大多数情况,例如几颗星,但是当我尝试像“ja''a''isfun”这样的用户输入时,输出是“相同的”,即使它应该显示“不同”,因为 'a' 和 'i' 是不同的字母。我想我的代码在这种情况下只能检查第一颗星。我该如何解决这个问题? (考虑没有撇号的星星)
String ind = "DIFFERENT";
for (int i = 0; i< s.length(); i++) {
if ((s.charAt(i) == '*') && (s.charAt(i-1)) == s.charAt(i+1))
ind = "SAME";
}
System.out.print(ind);
}
System.out.print("NO");
【问题讨论】:
-
没有星星的时候要输出什么?