gpt4 book ai didi

java - 在 java 1.2 中实现 replaceAll 功能

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:44:39 26 4
gpt4 key购买 nike

我有以下代码

import java.io.*;

public class Test{
public static void main(String args[]){
String Str = new String("Welcome to java world !");

System.out.print("Return Value :" );
System.out.println(Str.replaceAll(" ",
"%20" ));
}
}

这会产生以下结果:

Return Value :Welcome%20to%20java%20world%20!

但问题是我在我们的项目中使用旧版 java 1.2,不支持 String 类中的 replaceAll 或 StringBuffer 类中的 replace。 java 1.2如何实现replaceAll逻辑将所有空格替换成%20

最佳答案

当我说您应该从 1.2 迁移时,我非常是认真的,但即使您正在使用一个过时的版本,它也不像您没有一些原始的工具。

StringTokenizer可以使用,并且考虑到默认情况下它可以标记其中包含空格的字符串,这应该让您了解如何解决这个问题。

步骤很简单:

  • 创建一个StringTokenizer 实例
  • 通过标记器使用字符串并将其放入 StringBuffer
  • 在字符串被消费后,立即在其后放置"%20"
  • 如果没有要添加的标记,则不添加前一个字符串

作为一种粗略、未经测试*的方法,这是我想要的:

public String replace(String phrase, String token, String replacement) {
StringTokenizer st = new StringTokenizer(phrase, token);
StringBuffer stringBuffer = new StringBuffer();
while(st.hasMoreTokens()) {
stringBuffer.append(st.nextToken());
stringBuffer.append(replacement);
}
return stringBuffer.toString();
}

*:不可测试;我不能不会下载 Java 1.2 的副本。

关于java - 在 java 1.2 中实现 replaceAll 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29727655/

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