String operateId=“aaa-bbb-ccc” 根据-判断operateId长度 如果长度等于3则取最后一个-后面的值 如果长度等于2则追加ddd 怎么写java代码
时间: 2024-09-11 16:16:05 浏览: 53
在Java中,你可以通过以下代码来实现这个逻辑:
```java
String operateId = "aaa-bbb-ccc"; // 示例字符串
String[] parts = operateId.split("-"); // 使用-分割字符串
if (parts.length == 3) {
// 长度等于3,取最后一个-后面的值
String lastPart = parts[2];
System.out.println("最后一个-后面的值是:" + lastPart);
} else if (parts.length == 2) {
// 长度等于2,追加ddd
String newId = operateId + "-ddd";
System.out.println("追加ddd后的值是:" + newId);
} else {
// 其他情况,可以根据实际需要处理,这里只是一个示例
System.out.println("长度不是2或3,实际长度为:" + parts.length);
}
```
这段代码首先将`operateId`字符串按照"-"进行分割,然后根据分割后数组的长度来判断应该执行哪种操作。如果长度为3,就输出最后一个部分的值;如果长度为2,则将字符串与"ddd"拼接后输出。
相关问题
String operateId=“aaa-bbb-ccc” 根据-判断operateId长度 如果长度等于3则取最后一个-后面的值替换为 ttt 如果长度等于2则追加ddd 怎么写java代码
您可以使用Java的字符串处理方法来实现这个需求。以下是一个可能的实现方式:
```java
public class StringOperate {
public static void main(String[] args) {
String operateId = "aaa-bbb-ccc";
if (operateId.contains("-")) {
String[] parts = operateId.split("-");
if (parts.length == 3) {
operateId = parts[0] + "-" + parts[1] + "ttt";
} else if (parts.length == 2) {
operateId += "ddd";
}
}
System.out.println(operateId);
}
}
```
这段代码首先检查`operateId`是否包含"-",如果包含,那么使用`split`方法按"-"分割字符串。之后根据分割后的数组长度来判断需要进行的操作。如果长度是3,那么取前两个部分,并将最后一部分替换为"ttt";如果长度是2,则在原有字符串基础上追加"ddd"。
aaa@bbb@ccc根据最后一个@分割
如果你想要根据最后一个`@`符号来分割字符串`aaa@bbb@ccc`,可以使用Java的`lastIndexOf()`方法找到`@`的位置,然后使用`substring()`方法截取。以下是一个简单的示例:
```java
public class Main {
public static void main(String[] args) {
String str = "aaa@bbb@ccc";
String[] parts = splitByLastAt(str);
System.out.println(Arrays.toString(parts));
}
public static String[] splitByLastAt(String input) {
int lastAtIndex = input.lastIndexOf("@");
if (lastAtIndex != -1) { // 检查是否有最后的@
return new String[]{input.substring(0, lastAtIndex), input.substring(lastAtIndex + 1)};
} else {
throw new IllegalArgumentException("No '@' found in the string");
}
}
}
```
这个程序会返回一个新的字符串数组,其中第一个元素是到最后一个`@`前的部分(即`aaa@bbb`),第二个元素是包含`ccc`的部分。
阅读全文