We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
本书是这样描述String::inter()方法:
String::inter()是一个本地方法,它的作用是如果宇符串常量池申已经包含一个此String 对象的宇符串,则返回代表池中这个字符串的 string对象的引用;否则,会将此 String 对象包含的字符串添加到常量池中,并且返回此String对象的引用。
jdk对String::inter()的描述是:否则,将此String对象添加到池中并返回对该String对象的引用。
让我感到混淆的是这一句:“否则,会将此 String 对象包含的宇符串添加到常量池中,并且返回此 String对象的引用。”,这里提到的是将此String对象包含的字符串添加到常量池中。如果拿书本P63的代码来说:
String str1 = new StringBuilder("计算机").append("软件").toString(); System.out.println(str1.intern() == str1);
让我误以为是将“计算机软件”这个字符串添加到常量中,但是查看字符串常量池,显然没有“计算机软件”这个字符串。所以添加到常量池应该是包含“计算机软件”的String对象的引用。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
本书是这样描述String::inter()方法:
String::inter()是一个本地方法,它的作用是如果宇符串常量池申已经包含一个此String 对象的宇符串,则返回代表池中这个字符串的 string对象的引用;否则,会将此 String 对象包含的字符串添加到常量池中,并且返回此String对象的引用。
jdk对String::inter()的描述是:否则,将此String对象添加到池中并返回对该String对象的引用。
让我感到混淆的是这一句:“否则,会将此 String 对象包含的宇符串添加到常量池中,并且返回此 String对象的引用。”,这里提到的是将此String对象包含的字符串添加到常量池中。如果拿书本P63的代码来说:
让我误以为是将“计算机软件”这个字符串添加到常量中,但是查看字符串常量池,显然没有“计算机软件”这个字符串。所以添加到常量池应该是包含“计算机软件”的String对象的引用。
The text was updated successfully, but these errors were encountered: