java - 替换数组中的字符串,其中字符串的部分是 int

标签 java arrays string replace substring

我有代码,其中有一个具有混合数据类型的对象的构造函数:

public GuidedTour(String tourID, String tourDescription, double tourFee,
        String tourDate, int tourSize, String tourLeader)

我需要能够允许用户更新tourSize

我可以搜索和查找特定的游览,但无法弄清楚如何用输入的 int 值 int newTourSize 替换子字符串。

所以我尝试替换的代码是:

String tourDetails;
String newDetails = tourDetails.replace(tourSize, newTourSize);

它不会让我这样做,因为我正在使用 int 值。我尝试将 int 解析为字符串。

我不知道如何做到这一点,除了将所有值放回原值和新值之外,我确信最好找到并替换子字符串的该部分并将这个新字符串写入数组。

我有点挣扎(但自从我在这里提出第一个 java 问题以来已经进步了很多!)

有什么帮助吗?

最佳答案

你的类(class)看起来像这样:

public class GuidedTour {
    private String tourDetails;

    public GuidedTour(String tourID, int tourSize) { // other arguments omitted for brevity
        this.tourDetails = tourID + tourSize;
    }

    public String getTourDetails() {
        return tourDetails;
    }
}

您现在想知道如何将 tourSize 更改为 tourDetails

嗯,这很容易。不要忘记旅游细节的部分。将您的类(class)替换为类似的内容

public class GuidedTour {
    private String tourID;
    private int tourSize;

    public GuidedTour(String tourID, int tourSize) { // other arguments omitted for brevity
        this.tourID = tourID;
        this.tourSize = tourSize;
    }

    public String getTourDetails() {
        return tourID + tourSize;
    }

    public void setTourSize(int newTourSize) {
        this.tourSize = newTourSize;
    }
}

现在您不再需要进行任何字符串替换。您只需设置新的游览大小,然后要求 GuidedTour 实例通过重新组装所有部件来重新创建 tourDetails 字符串。

关于java - 替换数组中的字符串,其中字符串的部分是 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19995723/

相关文章:

java - 如何在java中将输入的字符串传递给谷歌搜索

java - 在java imap中获取X-Mailer

ruby-on-rails - 如何将此 Ruby 字符串转换为数组?

c# - 格式加倍为百分比 - 显示所有小数?

java - 可滚动复选框

java - 如何使用 PowerMock 测试从同一类调用另一个私有(private) void 方法的方法?

java - 数组/列表问题

javascript - 将每个整数加一返回 Javascript 数组

c - C 字符串的默认编码是什么?

java - 拉取字符串拆分的多个部分