黑马程序员技术交流社区
标题:
“”和" "空格,null tab键区分
[打印本页]
作者:
吕柳根
时间:
2013-6-26 23:32
标题:
“”和" "空格,null tab键区分
question:
""
和
" "
还有一个
空格
和
两个空格
的区别,还有是
null
的区别,还有就是按
tab键
,还有
回车
??????????几个搞得头大
这七个怎么区分,我们常说的不能为空,是不能为""还是不能为null ,还是什么????
求高手解答,谢谢!
作者:
菜鸟励志要逆袭
时间:
2013-6-27 11:14
关于""、" "、一个空格、两个空格、null、tab可以放在一个字符串中(回车键暂时还不知道该怎么办),然后转换成字符数组的方式来区分。
string str1 = null;
try
{
char[] myChar1 = str1.ToCharArray();
Console.Write(str1);
Console.WriteLine(myChar1.Length);
}
catch {
Console.WriteLine("str1的初始值为NULl");
}
Console.ReadKey();
string str2 = "";
char[] myChar2 = str2.ToCharArray();
Console.Write(str2);
Console.WriteLine(myChar2.Length);
Console.ReadKey();
string str3 =" ";
char[] myChar3 = str3.ToCharArray();
Console.Write(str3);
Console.WriteLine(myChar3.Length);
Console.ReadKey();
string str4 = " ";
char[] myChar4 = str4.ToCharArray();
Console.WriteLine(str4);
Console.WriteLine(myChar4.Length);
Console.ReadKey();
string str5 = " ";
char[] myChar5 = str5.ToCharArray();
Console.WriteLine(str5);
Console.WriteLine(myChar5.Length);
Console.ReadKey();
}
我们常说的不能为空是指null.比如一个箱子,里面什么都没有,但是存在的。而null就表示连这个箱子都没有。
不知道理解的对否,如理解有误,望大神批评指正。
作者:
leayon
时间:
2013-6-27 14:40
本帖最后由 leayon 于 2013-6-27 14:42 编辑
我们常说的不能为空指的是不能为null,
如:string str1 = ""; string str2 = null; 在这两个表达式里面,str1表示一个长度为0的字符串,str2表示这个变量里面什么东西都没有。
string str3 = " ";表示str3是一个由一个空格字符组成的长度为1的字符串。同理,两个空格就表示由两个空格字符组成的长度为2的字符串,它们两个是不一样的,你可以写代码用equals验证一下它们两个是否相等。
tab键只是表示一个制表符,它表示8个空格字符,使光标由第一个位置跳到第9个位置,在输出语句中,通常用"\t"来表示。
回车键就是换行显示啊。
楼主可按照下面的代码运行一下就明白了。
static void Main(string[] args)
{
string str1 = " "; //一个空格组成的字符串
string str2 = " "; //两个空格组成的字符串
string str3 = "\ta"; //一个制表符加一个字符a组成的字符串
string str4 = " a"; //八个空格加一个字符a组成的字符串
Console.WriteLine(str1.Equals(str2));
Console.WriteLine(str3); Console.WriteLine(str4);
Console.WriteLine(str3.Equals(str4));
Console.ReadKey();
}
打印输出的语句如下:
False
a
a
False
可以看到如果字符串中有"\t",那么它只在 用string.Format()格式化 或 输出这个字符串 的时候才表示下一个制表位,如果在程序中拿这个字符串进行其它的操作,那么它只是 一个普通的字符串。
换行符"\n"也同样如此。
作者:
吕柳根
时间:
2013-6-27 16:29
leayon 发表于 2013-6-27 14:40
我们常说的不能为空指的是不能为null,
如:string str1 = ""; string str2 = null; 在这两个表达 ...
很精简!貌似懂了
作者:
dongqinglove
时间:
2013-6-27 16:55
谢谢,学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2