gpt4 book ai didi

java - 如何在两个字符上使用 .indexOf?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:44:06 27 4
gpt4 key购买 nike

所以,我正在尝试制作一个遵循乘法和除法顺序的计算器,我正在输入一个字符串,例如“6+43/2-5*12”,我的程序应该找到第一个除法或乘法位置。

我可以像这样在字符串上找到第一个乘法:

int first_mult = string.indexOf('*');

字符串的第一个部分如下:

int first_div = string.indexOf('/');

这行得通,但我想同时找到第一个乘法或除法,我试过了:

int first_oper = string.indexOf('*'||'/');

但这行不通。有什么办法吗?

最佳答案

您可以使用 Matcher 执行此操作.例如:

public int indexOfOperator(final String string) {
final Matcher matcher = Pattern.compile("[*/]").matcher(string);
if (!matcher.find()) {
return -1;
}

return matcher.start();
}

显然可以进行改进,例如存储已编译的 Pattern明智的地方。

关于java - 如何在两个字符上使用 .indexOf?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56278337/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com