黑马程序员技术交流社区

标题: 获得类名 [打印本页]

作者: fengche    时间: 2013-10-19 18:43
标题: 获得类名
本帖最后由 fengche 于 2013-10-20 15:23 编辑
  1. package com.javapuzzlers;
  2. public class Me {
  3.     public static void main(String[] args){
  4.         System.out.println(
  5.              Me.class.getName().
  6.                 replaceAll(".","/") + ".class");
  7.     }
  8. }
复制代码
打印的是///////////////////.class。到底怎么回事?
作者: 風諾    时间: 2013-10-19 18:52
我觉得java中的"."表示通配符
代表了任意一个长度1的字符串,你把字符串的任意一个字符都替换成了"/"
再和".class"连接,就是这个结果了
作者: 卜弦    时间: 2013-10-19 18:55

  1. public class Me {
  2.     public static void main(String[] args){
  3.         System.out.println(
  4.              Me.class.getName().replaceAll(".","/") + ".class");
  5.     }
  6. }
  7. //首先Me.class.getName()这句话打印输出结果为 Me
  8. //然后加上replaceAll(".","/")   "."的意思是指任何字符。整句话的意思是说:
  9. //把"Me"中的任何字符替换成/
  10. //所以就是整个输出语句输出的就是  //.class
复制代码

作者: 风悠悠    时间: 2013-10-20 11:33
本帖最后由 风悠悠 于 2013-10-20 11:37 编辑
  1. public class Me {
  2.         
  3.     public static void main(String[] args){
  4.             System.out.println(
  5.              Me.class.getName().replaceAll("\\.","/") + ".class");
  6.     }
  7. }
复制代码
先\\转义成 \ ,再\. 转义成 .    运行结果如下图!!!







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2