java - for 循环内的打印语句导致多个输出而不是一个输出,如何在不使用 "return"的情况下解决此问题?

标签 java string for-loop

我是一名初学者编码员。如果字符串输入由“l”+“任意字符”+“l”组成,我的代码需要显示“yes”。例如,“uwbıclsl”应该有一个“yes”输出,因为一个字母夹在两个 l 之间。但是,由于我的 print 语句位于 for 循环内,因此它显示几个"is"和“否”。我该如何修复它,以便我只有 1 个输出(是或否),并且仍然有打印语句而不是返回?

for (int i = 0; i < s.length(); i++) {

            if ((s.charAt(i) == 'l') && (s.charAt(i + 2) == 'l')) {

                System.out.print("YES");

            } else
                System.out.print("NO");

最佳答案

为此最好使用正则表达式

System.out.println(s.matches(".*l.l.*") ? "YES" : "NO");

关于java - for 循环内的打印语句导致多个输出而不是一个输出,如何在不使用 "return"的情况下解决此问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55551607/

相关文章:

eclipse - Eclipse 中 JRE 系统库中的断点

java - Spring 4.1 @Qualifier 不起作用

swift - 步长值大于 1 的 For 循环

c++ - 从函数返回 vector 以打印内容

MYSQL:char 字段在 select 语句中被截断

matlab - 向量化嵌套循环,其中一个循环变量依赖于另一个

python - 在我的批处理文件重命名和移动脚本中遇到 Python os.rename() 问题

java - 暂时禁用 System.out

java - 更改 gui 中的面板

c - 从 char 变量中获取数字字符串并将其重新分配给整数变量