split("\t") 和split(" ")这两个切割的内容是不一样的,不能相互替换
编程过程中,我们常常用多个空格或制表符分隔两个字符串,那么这两个在显示效果上有什么区别呢?
制表符\t: 作用跳格,即到下一个"制表区",在系统中一个"制表区"占8列。
空格: 作用就不用我多说了吧,啥跳跃啦,攻击,暂停一大堆 ,但这里就是空格的意思。
在这,咱找两段代码看看运行效果(虽然都是网上找的)
代码1:
printf("6\t6"); //6和6之间有 '7' 个空格
printf("16\t2"); //16和2之间有 '6' 个空格
代码2:
这里’\t’只空了一个格,诶’\t’不是空4个或8个空格吗?
该问题牵扯到制表符’\t’到底跳过几个空格。
\t到底跳过几个空格是没有规定的,也是没有标准的,每个输出设备会规定自己设备上\t会定位到某个整数单位倍数处,比如有的设备规定\t定位到8字符整数倍数处,假定某个字符串在制表符\t的前面有n个字符,那么\t将跳过8-n%8个空格,即 将光标移到最接近8的倍数的位置,使得后面的输入从此开始
就是\t会自动补位置,就跟上述代码2一样,会自动对齐,因为有的设备会规定\t定位到8字符整数倍数处,他和空格不一样