java - 如何检查列表字符串变量的元素
问题描述
我想通过列表编写一个简单的系统,它将识别符号并对列表中的一些符号进行一些计算,并判断是否有任何错误。
它看起来像这样:
private static List<String> list = new ArrayList<>();
private static void splitToList(String string){
list.addAll(Arrays.asList("((35+6-(4+4))=0;".split("")));
chekList(list);
}
private static void chekList (List list){
int open = 0;
int close =0;
for (int i=0;i<list.size();i++) {
System.out.println(list.get(i));
if (list.get(i) == "(") {
open++;
System.out.println(open);
}
if (list.get(i) == ")") {
close++;
System.out.println(close);
}
}
if (open != close){
System.out.println("false!");
br = true;
}
}
因此,用于识别列表元素中的“(”和“)”的 if 语句的问题无论如何都不起作用。有什么方法可以检查我的列表元素是否为“(”或“)”?
这是完整的 IDE 输出。没有任何“打开”和“关闭”结果。
解决方案
==
测试引用相等性(它们是否是同一个对象)。
您需要使用")".equals(list.get(i))
来测试值是否相等(它们在逻辑上是否“相等”)。
推荐阅读
- webots - 在没有可视化的情况下运行 webbots
- python - Pandas groupby 在 1.1.0 中的 fillna 之后删除了组列
- json - 两个 404 错误有什么区别?
- unity3d - 从“GameManager”脚本调用函数时,出现以下错误“NullReferenceException”
- c# - SendGrid 端口 8080 弃用
- maven - 用于创建 Maven 工件和 Docker 映像的 Jenkins 管道
- memory - fortran 函数是否总是将 retun 值的结果复制到接受变量中?
- python - 如何使用我自己的帐户向使用电报 API 的人发送消息
- browser - Puppeteer + AWS Lambda - 找不到浏览器修订版
- postgresql - Docker java.net.UnknownHostException:postgres