查看: 1343| 回复: 4
跳转到指定楼层
上一主题 下一主题
收起左侧

[学Java/C#] 问一个Java的语法

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

问一个语法

private String blank(int length) {
            return new String(new char[length]).replace('\0', ' ');
        }

比如,这个地方 为啥是 替换  \0   这个是什么东西呢?

上一篇:如何在短时间内快速而有效地刷题
下一篇:再来一个语法问题
全局:
zebointexas 发表于 2020/03/20 01:01:38
如果默认值是\0,那是啥意思?
有个东西叫谷歌,国内叫百度
回复

使用道具 举报

推荐
magicsets 2020-3-20 04:34:30 | 只看该作者
全局:
'\0' 就是ASCII码为 0 的字符,\后面那个0实际上是八进制数字

比如字符 'A' 的 ASCII码十进制下是 65,那么八进制就是101,那么'\101' 就与 字符 'A' 等价

楼主可以运行一下下面这些代码:


  1. public class Main {
  2.   public static void main(String[] args) {
  3.     char a = 0;
  4.     char b = '\0';
  5.     char[] c = new char[8];
  6.    
  7.     // 0
  8.     System.out.println((int) b);

  9.     // true
  10.     System.out.println(a == b);

  11.     // true
  12.     System.out.println(c[0] == b);

  13.    
  14.     String d = new String(c);
  15.    
  16.     // 0
  17.     System.out.println((int) d.charAt(0));

  18.     // true
  19.     System.out.println(d.charAt(0) == b);
  20.    
  21.     // XXXXXXXX
  22.     System.out.println(d.replace(b, 'X'));
  23.    
  24.     // XXXXXXXX
  25.     System.out.println(d.replace((char) a, 'X'));
  26.    

  27.     // A 字符
  28.     char x = 'A';
  29.     System.out.println(x);

  30.     // A 的ASCII码 十进制
  31.     char y = 65;
  32.     System.out.println(y);

  33.     // A 的ASCII码 八进制
  34.     char z = '\101';
  35.     System.out.println(z);   
  36.   }
  37. }
复制代码
回复

使用道具 举报

全局:
char数组的默认值 和boolean 数组默认值是false一个道理
回复

使用道具 举报

🔗
 楼主| zebointexas 2020-3-20 01:01:38 | 只看该作者
全局:
hang.io 发表于 2020-3-20 00:40
char数组的默认值 和boolean 数组默认值是false一个道理

如果默认值是\0,那是啥意思?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表