gpt4 book ai didi

java - pattern() 与 Pattern 类中的 toString()

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:15:25 27 4
gpt4 key购买 nike

Pattern类中的pattern()方法和toString()方法有什么区别?

文档说:

public String pattern()

Returns the regular expression from which this pattern was compiled.

public String toString()

Returns the string representation of this pattern. This is the regular expression from which this pattern was compiled.

即使他们的实现也返回相同的结果:

import java.util.regex.*;

class Test {
public static void main(String[] args) {
Pattern p = Pattern.compile("[a-zA-Z]+\\.?");
String s = p.pattern();
String d = p.toString();
System.out.println(s);
System.out.println(d);
}
}

我看不出有什么区别,那么为什么有两种方法呢?还是我遗漏了什么?

最佳答案

因为每个类都有一个继承自ObjecttoString()方法。 toString() 方法应该返回一个字符串,该字符串以它可能的最佳方式表示对象,如果它甚至可以创建某种字符串表示形式的话。toString() 的名称非常模糊,因此他们添加了一个更直接的方法 pattern()

因为他们希望 toString() 返回一些聪明的东西,所以他们使用了正则表达式的模式,这是 Pattern 类的一个很好的字符串表示。

关于java - pattern() 与 Pattern 类中的 toString(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10773506/

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