我想遍历字符串的ArrayList并确定每个字符串是否为运算符(+, - ,/,*,%)。你使用分隔符吗?如果是这样,在这种情况下你将如何使用它。
答案 0 :(得分:2)
一种非常简单的检查方法是在列表中简单地使用已知的分隔符,并检查每个项目以查看它是否存在于该列表中。 e.g:
List<String> delimiters = new ArrayList<>();
delimiters.add("+");
delimiters.add("-");
delimiters.add("/");
delimiters.add("*");
delimiters.add("%");
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("+");
list.add("-");
list.add("/");
list.add("*");
list.add("%");
for (String s : list)
{
if (delimiters.contains(s))
{
System.out.println("This is a delimiter. " + s);
}
}
编辑评论中的示例:
List<String> delimiters = new ArrayList<>();
delimiters.add("+");
delimiters.add("-");
delimiters.add("/");
delimiters.add("*");
delimiters.add("%");
List<String> list = new ArrayList<>();
list.add("12");
list.add("510");
list.add("+");
list.add("2");
list.add("*");
List<String> operators = new ArrayList<>();
List<String> operands = new ArrayList<>();
for (String s : list)
{
if (delimiters.contains(s))
{
operators.add(s);
}
else
{
operands.add(s);
}
}
System.out.println("Operators: " + operators);
System.out.println("Operands: " + operands);
输出:
Operators: [+, *]
Operands: [12, 510, 2]