社区
Java SE
帖子详情
String的一个小问题
yzj123
2010-02-28 11:50:46
String s = new String("xyz");
创建了几个String Object?
...全文
411
36
打赏
收藏
String的一个小问题
String s = new String("xyz"); 创建了几个String Object?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
36 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lliiqiang
2010-03-05
打赏
举报
回复
创建了两个对象和一个引用.
引用s存放的是对象的地址而不是数值
豆虫
2010-03-04
打赏
举报
回复
引用 33 楼 bao110908 的回复:
这是 CSDN Java 版的周经帖!
的确看过N遍了。。。
孤独剑客
2010-03-03
打赏
举报
回复
晕菜, 又是这个, 别来了行不
两个, ThinkingInJava中的
east_java
2010-03-03
打赏
举报
回复
3个,构造函数中的一个,new一个,引用一个
http://www.java1995.cn/wiki/topic/2
zqfddqr
2010-03-03
打赏
举报
回复
。。。这种问题可以直接百度的 问过好多次了。。。
wang461137703
2010-03-03
打赏
举报
回复
两个,一个是放在池里,另一个放在了堆里。。。。。。
cwjieNo1
2010-03-03
打赏
举报
回复
仔细观察了一下,这个问题回帖的,都是等级不是很高的人·
火龙果被占用了
2010-03-03
打赏
举报
回复
我说产生 10 个对象,你难道把内存扒腾出来数数看不成?
火龙果被占用了
2010-03-03
打赏
举报
回复
这是 CSDN Java 版的周经帖!
xulei1987518
2010-03-02
打赏
举报
回复
顶,应该是2个吧……
swing_false
2010-03-02
打赏
举报
回复
2个吧 应该 第一是放在data区的 第二个放在堆空间中的
himlys
2010-03-02
打赏
举报
回复
String Object 就一个在字符串池里,对象和应该是3个
xxpp688
2010-03-01
打赏
举报
回复
String s = new String ("xyz");
是吧!楼主考我那:
这个问题要分情况讨论
首先要看存在不存在“xyz”(或者有无“xyz”)
一:
如果不存在“xyz”则创建了一个“xyz”对象;
二:
如果存在“xyz”那就是两个;
一个是:你创建的字符串“xyz”
一个是:字符串指向S的引用
liguang168
2010-03-01
打赏
举报
回复
这个问题争了几十年了,还有这么多人不知道。
有说1,2,3个的。
到底几个?自己慢慢理解,我觉得明白就行了,JAVA有一个字符串池。
字符串池有的话,不会重复生成,但new是肯定会生成一个新的对象。
所以String a = "abc";
String b = "abc";
String c = new String("abc");
a == b (true);
a == c (false);
a,本身也应该是一个对象。
OK.
狂想者
2010-03-01
打赏
举报
回复
学习一下,需要学习的太多了。。。。
哈特中尉
2010-03-01
打赏
举报
回复
String s = new String("xyz");
创建了3个对象:
(1)"xyz"
(2)new String("xyz")
(3)String s
解析:(1)创建对象"xyz"(2)再将该对象作为参数,创建new String("xyz")(3)创建对象s
最后:s指向new String("xyz")
musiclee
2010-03-01
打赏
举报
回复
我靠 还讨论这问题呢。。。。。。。
ahut12825
2010-03-01
打赏
举报
回复
3个,构造函数以个,new一个,引用一个
cheung1987
2010-03-01
打赏
举报
回复
mark,以前也看到这个问题有人发了,一直都很火
xueye052
2010-03-01
打赏
举报
回复
我是这样觉得的 两个或一个,”xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那一个。New String每写一遍,就创建一个新的对象,它一句那个常量”xyz”对象的内容来创建出一个新String对象。如果以前就用过’xyz’,这句代表就不会创建”xyz”自己了,直接从缓冲区拿。
加载更多回复(14)
String
中equals遇到的
一个
问题
问题
: public void test() { Map<
String
,Object> map = new HashMap<
String
,Object>(); map.put("1",0); System.out.println("1".equals(map.get("1"))); } 这边显示的结果为false。 原因: public boolea...
String
字符串替换的
一个
诡异
问题
[b][size=medium]将字符串中的数字替换成$D[/size][/b] 希望将以下字符串中的数字替换为$D字符 [quote] ab1cd2 [/quote] 我们知道
String
有3个用于字符替换的方法,分别是: [list] [*]
String
replace(CharSequence target, CharSequence replacement):将...
java 中
String
的
一个
小
问题
代码如下: 知识点 大概有两个: 1,
String
是一种 引用类型 2,
String
的字符串常量池 疑点 是 指针相同的
String
变量,给其中
一个
赋值,对另外
一个
有影响么? 结论是 没有影响 而且按照编程逻辑,给其中
一个
赋值,也就是 修改了 其 引用地址,但对之前引用的
String
对象 没有做任何修改(私有成员变量 char value[];,因为私有,所以没有公共 set方法的话,我们也无法 修改内部成员变量的值),所以对另
一个
没有影响 所以
String
虽然简单,但十分有趣
String
str
一个
关于
string
内存的
问题
在WEB技术中文论坛看到一篇JAVA中
String
关于内存变化的帖子,感觉写的很好,自己现在又在学java,就复制了下来,有点长,但绝对值得好好学习研究.
String
aa=new
String
("aaaa");
String
bb="bbbb"; 这两个有什么区别吗?
String
aa=new
String
("aaaa"); aa=aa+"abc";
String
由
string
删除某个字符的操作发现的
一个
问题
最近在看C++primer,3.2 标准库类型
string
有
一个
习题,写
一个
程序将输入的字符串中的符号删除后输出。我新建了
一个
字符串接收非符号的字符串,但是最后输出结尾部分总是多
一个
a。#include #include #include using namespace std; int main(){
string
dd,dd2; cin >> dd; decltype(dd.size()
Java SE
62,622
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章