java中string类型变量的默认初始值是什么?

 我来答
生活HJH
2018-03-31 · TA获得超过9876个赞
知道小有建树答主
回答量:86
采纳率:0%
帮助的人:1.4万
展开全部

java中string类型变量的默认初始值是为null。

string a,b;

声明string类型变量,不需要考虑字符串分配的空间大小,并且在字符串初始化上也有更多选择。

1.string  a("the dog");

2.string a;

a="the dog";

3.string a="the dog";

可也可以把重新给string对象赋值而无须担心是否会导致容量不够,比如:

string a="dog"; 

a="persian";

a能“自动”扩容,存储"persian"

string对象的赋值和比较操作不用像C那样调用库函数也能完成。

1.用“==”比较字符串,如果两个字符串内容完全一致,返回true,否则flase,在c中需要调用strcmp函数

2.“=”把一个变量复制到另一个,将复制字符串内容而非指针值。

3.“+”将两个字符串连接起来

但 string str = "the "+" dog";却无法编译通过,+可以在两个string对象或一个string和一个C字符串之间合并,但不支持两个C字符串合并,在此,字符串字面值仍然属于C字符串范畴。

string类型单个字符的访问

用来访问一个C字符串里的单个字符的语法同样也可以用来访问一个string对象里的单个字符。

string dog="Mac";

cout<<dog[0]<<endl;//访问第1个字符dog[0]

字符串长度应该使用size成员函数,不同于C使用strlen:

int length=dog.size();

字符串输入

string dog;

cin >> dog;

输入流操作符(>>)为string类型的变量读入数据,但不知是:无论来自键盘的字符有多少,只能返回第一个白空格字符(空格,制表符,换行符)之前的那些字符。

可以使用getline(cin,dog);

把一整行字符的输入放到一个string变量里。

百度网友b1fa122
2016-12-27 · TA获得超过893个赞
知道大有可为答主
回答量:1059
采纳率:100%
帮助的人:1019万
展开全部
String类型是引用型类型,如果不初始化则默认为null;
更多追问追答
追问
null会被分配内存空间吗
追答
String abc=null;
String abc;
1:创建一个字符串对象为null, 分配了内存
2:声明一个字符串对象,但并没有分配内存
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
江风殘雲DH
2016-12-28 · 超过13用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:26万
展开全部
null,不初始化的话
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
佰特威信息技术
2016-12-28
知道答主
回答量:24
采纳率:0%
帮助的人:2.4万
展开全部
null
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式