【发布时间】:2015-08-07 03:14:09
【问题描述】:
我在从字符串转换为小写时遇到问题。我需要能够接受多种大小写组合,以确保无论用户如何输入“优先级”字符串,它都能正常工作。
这是我的入队方法
public void enqueue(T element, String priority){
priority = priority.toLowerCase();
if (priority == "high"){
prioritiesArr[0].add(prioritiesArr[0].count, element);
}
else if (priority == "medium"){
prioritiesArr[1].add(prioritiesArr[1].count, element);
}
else if (priority == "low"){
prioritiesArr[2].add(prioritiesArr[2].count, element);
}
else throw new IllegalArgumentException("Not a valid priority option");
System.out.println("added " + element + " with priority " + priority );
}
当测试人员调用时
test.enqueue(1, "High");
我得到了 IllegalArgumentException。问题是,当我进行一些打印调试时,该字符串实际上是小写的,但是当我将它与enqueue 中的小写版本进行比较时,它似乎没有相同的值。
是否存在某种比较问题?请帮我一把!谢谢
【问题讨论】:
-
我还发现,在这个特定的应用程序中,
String.equalsIgnoreCase非常有用
标签: java string lowercase tolower