gpt4 book ai didi

java - 返回 2 个字符串的连接 java

转载 作者:行者123 更新时间:2023-11-30 10:35:20 29 4
gpt4 key购买 nike

基本上,我希望返回 2 个字符串的串联,但是,如果串联创建一个双字符,那么我将省略其中一个。

public String conCat(String a, String b) {
if(a.isEmpty()){
return b;
}
if(b.isEmpty()){
return a;
}
if(a.substring(a.length()-1, a.length()).equals(b.substring(0,1))){
return a+b.substring(1, b.length());
}
return a+b;
}

以上是我的代码,但我想知道是否有一种方法可以用更少的代码编写代码,或者更准确地说,是否有一种方法可以替换前两个条件,只需一行或两行代码。

最佳答案

使用 charAt 而不是 subString 来获取您要比较的 2 个字符:

if (a.charAt(a.length()-1)==b.charAt(0))

前两个条件可以换成

if(a.isEmpty() || b.isEmpty()) {
return a+b;
}

结合这两个你可以写:

public String conCat(String a, String b) {
if(a.isEmpty() || b.isEmpty() || a.charAt(a.length()-1) != b.charAt(0)) {
return a + b;
} else {
return a + b.substring(1, b.length());
}
}

可以用(相当长的)一个衬垫代替:

public String conCat(String a, String b) {
return (a.isEmpty() || b.isEmpty() || a.charAt(a.length()-1) != b.charAt(0)) ? (a + b) : (a + b.substring(1, b.length()));
}

这是假设两个输入字符串都不能为空。

关于java - 返回 2 个字符串的连接 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41229677/

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