将下述语句进行优化,提炼成一个两个入参一个出参的方法 if (commaInt >= 0 && dunhaoInt >= 0 && fullStopInt >= 0) { if (commaInt > dunhaoInt) { regionNameStr = dunhaoInt > fullStopInt ? eventSum.substring(0, fullStopInt) : eventSum.substring(0,dunhaoInt); } else { regionNameStr = commaInt > fullStopInt ? eventSum.substring(0, fullStopInt) : eventSum.substring(0,commaInt); } } else if (commaInt >= 0 && dunhaoInt >= 0 && fullStopInt < 0) { regionNameStr = commaInt > dunhaoInt ? eventSum.substring(0,dunhaoInt) : eventSum.substring(0, commaInt); } else if (commaInt >= 0 && dunhaoInt < 0 && fullStopInt >= 0) { regionNameStr = commaInt > fullStopInt ? eventSum.substring(0,fullStopInt) : eventSum.substring(0, commaInt); } else if (commaInt < 0 && dunhaoInt >= 0 && fullStopInt >= 0) { regionNameStr = dunhaoInt > fullStopInt ? eventSum.substring(0,fullStopInt) : eventSum.substring(0, dunhaoInt); } else if (commaInt >= 0 && dunhaoInt < 0 && fullStopInt < 0) { regionNameStr = eventSum.substring(0, commaInt); } else if (commaInt < 0 && dunhaoInt >= 0 && fullStopInt < 0) { regionNameStr = eventSum.substring(0, dunhaoInt); } else if (commaInt < 0 && dunhaoInt < 0 && fullStopInt >= 0) { regionNameStr = eventSum.substring(0, fullStopInt); }
时间: 2024-02-27 09:56:05 浏览: 103
可以将代码提炼成一个方法,该方法有两个入参eventSum和minIndex,一个出参regionNameStr。其中minIndex表示逗号、顿号和句号中最小的下标值。
以下是示例代码:
```
public static String getRegionNameStr(String eventSum, int minIndex) {
if (minIndex >= 0) {
if (minIndex == eventSum.indexOf(",")) {
int otherIndex = Math.max(Math.max(eventSum.indexOf(","), eventSum.indexOf("。")), -1);
regionNameStr = otherIndex >= 0 ? (otherIndex > minIndex ? eventSum.substring(0, minIndex) : eventSum.substring(0, otherIndex)) : eventSum.substring(0, minIndex);
} else if (minIndex == eventSum.indexOf(",")) {
int otherIndex = Math.max(Math.max(eventSum.indexOf(","), eventSum.indexOf("。")), -1);
regionNameStr = otherIndex >= 0 ? (otherIndex > minIndex ? eventSum.substring(0, minIndex) : eventSum.substring(0, otherIndex)) : eventSum.substring(0, minIndex);
} else if (minIndex == eventSum.indexOf("。")) {
int otherIndex = Math.max(Math.max(eventSum.indexOf(","), eventSum.indexOf(",")), -1);
regionNameStr = otherIndex >= 0 ? (otherIndex > minIndex ? eventSum.substring(0, minIndex) : eventSum.substring(0, otherIndex)) : eventSum.substring(0, minIndex);
}
} else {
regionNameStr = eventSum;
}
return regionNameStr;
}
```
这样,原来的代码可以改为调用该方法,并传入minIndex作为参数。例如:
```
int minIndex = Math.min(Math.min(commaInt, dunhaoInt), fullStopInt);
regionNameStr = getRegionNameStr(eventSum, minIndex);
```
阅读全文