如何将一个或两个字符与另一个字符或两个字符进行比较

时间:2017-09-27 00:44:45

标签: java string if-statement char

我编写了一个遍历大字符串的for循环,其目标是查看我的字符串是否包含$或$$等字符。 这是我在for-loop中的if语句:

if (stringName.charAt(i) == "$" || stringName.charAt(i) == "$$")

当我编译我的代码时,我得到一个错误,说“无法比较的类型:char和String”这是自我解释的。 现在我的问题是,解决它的最佳方法是什么?除了charAt()之外,我可以用什么方法比较两个字符串“$$”?

2 个答案:

答案 0 :(得分:0)

单个字符无法与两个字符进行比较。除了语法问题,难以想象。

您的代码在两个地方发生了变化: Char类型的单撇号,和他的API中的字符串选择(substring()和比较(equals()

if (stringName.charAt(i) == '$' || stringName.substring(i,i+2).equals("$$"))

EDIT 同意,第二个条件是多余的,让我们先了解问题

 if (stringName.charAt(i) == 'A' || stringName.substring(i,i+2).equals("BB"))

感谢您的评论

答案 1 :(得分:0)

您应该使用String.substring()代替。您可以像这样重写代码:

if (stringName.charAt(i) == '$' || stringName.substring(i, i + 2).equals("$$"))