Java如何将字符串的最后一个字符替换为特定字符

标签 java string

我在尝试格式化字符串时遇到了一些问题。所以基本上我得到了入队和出队,现在工作正常。这是代码:

public String toString(){
    String str = "[";
    for(int i = front; i<= rear; i++){
        str += Q[i] + ",";  
    }

    if(str.length() > 0 && str.charAt(str.length()-1)==','){
        str.substring(0, str.length()-1);
    }

    return str;
}

我希望结果像[1,2,3,4]。但是,我不知道如何将最后一个 "," 替换为 "]"。当前的问题是它返回我 [1,2,3,4, 就是这样。

最佳答案

改变:

for(int i = front; i<= rear; i++){
    str += Q[i] + ",";  
}

到:

for(int i = front; i< rear; i++){
    str += Q[i] + ",";  
}
str+=Q[rear] + "]";

另外,最好使用 StringBuilder.append() 而不是 str +=,因为 String 是 immutable 并且每次您使用str+= 它创建您的 str 对象的新实例

使用 StringBuilder 它将是:

StringBuilder str = new StringBuilder();
str.append("[");
for(int i = front; i<= rear; i++){
    str.append(Q[i] + ",");  
}
str.append(Q[rear] + "]");

关于Java如何将字符串的最后一个字符替换为特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30682549/

相关文章:

java - Java "Pass by reference"是否不适用于集合中存在的元素

Java:如何在字符串列表中找到最可能的字符串?

javascript - 从变量中删除 #

.net - list "order by"故障

sql - 在DB2中拆分VARCHAR以检索内部的值

java - 如何在 Java 中复制一个套接字(转移到另一个线程)?

java - 遍历数组列表时删除空值

java - textView setText() NullPointerException

Java 最终 boolean 优化

string - gnuplot - 使用字符串变量