public class Test2 {
  char c;

  void ptintTest2(){
    System.out.println("????");
}

  public static void main(String[] args){
    Test2 T=new Test2();
    T.ptintTest2();

   }
}
我想在问号里面写一条语句,使得输出的结果为:c=[]。请问一下大家怎么写?谢谢!

解决方案 »

  1.   

    这样写会编译错误?public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println("c=[]"); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 
      

  2.   

    public class Test2 {
      
      void ptintTest2(char c){
        System.out.println("c="+c);
    }  public static void main(String[] args){
        Test2 T=new Test2();
        T.ptintTest2('[]');  }

    是不是这样
      

  3.   

    public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println("c="+????); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 

    问号里面的语句怎么写才能输出结果为:c=[]。我写这个程序的目的是为了验证c的初始值为Null。
      

  4.   

    System.out.println("????"); 
    引号里是什么 就输出什么
      

  5.   

    字符没初始化是空的
     System.out.println("c="+????); 
    改成
     System.out.println("c="+c); 
    结果是 c=
      

  6.   

    楼主
    System.out.println("c="+????);
      这里的问号是什么意思 
        你想输出什么
     
      

  7.   

    这样写可以通过  我试过了 而且执行了结构就是 c=[]不过单单是想输出这样的结果的话 有必要写这样写么?直接打印就可以了
    public class Test2 

     public static void main(String[] args)
      { 
        System.out.println("c=[]"); 
      } 

      

  8.   

    char 默认初始化为零,对应没有值为"0"得字符吧?楼主是什么意思?如果是字符得话,他不可能等于'[]',更不可能为空啊。
      

  9.   

    public class Test2 {   void ptintTest2(char c){ 
        System.out.println("????"); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2('[]');   } 

      

  10.   

    问号里面的语句怎么写才能输出结果为:c=[]。我写这个程序的目的是为了验证c的初始值为Null。楼主意思是说,目的是验证c的初始值为空,对吧?
    在程序中你定义了c类型为char(字符类型), 而char的默认初始值是\u0000,就是空值。
    public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println(c); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 
    } 在这语句System.out.println(c)加上字符c,这样就可以验证c字符类型的初始值了
    输出结果为空
      

  11.   

    验证它为空
    if(c == null) 
          System.out.println("C 为空值");
    else System.out.println("C 不为空值");
      

  12.   

    have a try
    System.out.println("c=" + Arrays.toString(new char[]{c})); 
      

  13.   

    应该这样弄:
    public class Test2 {   
     static void ptintTest2(String s){ 
        System.out.println("c=" + "["+ s + "]"); 
    }    public static void main(String[] args){ 
        Test2 T=new Test2(); 
        
       T.ptintTest2("asd");    } 
      

  14.   

    public class Test2 { 
      char c;
      void ptintTest2(){ 
        System.out.println("c="+c); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2('[]');   } 

    按你的意思,这个应该对了
      

  15.   

    public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println("c" + c);
        //这点你要输出什么就写什么,但是你就申请了一个char变量没办法你现在只能输出char c; 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 
      

  16.   

    唉,一片混乱呀。首先,楼主的概念很混乱。Java里面有两种数据类型,一种是基本数据类型,char就属于这种类型。
    基本数据类型没有属性和方法,仅仅用于保存值。
    第二种是对象类型。String就属于这种类型。
    对象类型有属性和方法,如果想调用属性和方法必须首先实例化它(即new)。接着说初始化的问题:
    如果是基本数据类型,你又是在类中声明的(即不是在方法中声明的),那JVM会对它们进行自动初始化。比如int会初始化为0,float会初始化为0.0f,boolean会初始化为false,char会初始化为''(即前面有位兄弟说的'\u0000')。
    如果是对象类型,你又是在类中声明的(即不是在方法中声明的),那JVM也会对它们进行自动初始化,自动初始化的结果就是null。所以,楼主所说“检测char为null”是无法实现的,因为char类型的变量永远不可能是null。既然char类型不可能是null那楼主的问题也就无法解决了。
    还有就是前面有几楼的朋友认为以下代码是对的:
    public class Test2 { 
      char c; 
      void ptintTest2(){ 
        System.out.println("c="+c); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2('[]');   } 
    }希望各位本着实事求是的精神,亲自用编译器编译一下,你就会发现,里面有一个很明显的错误。即传的参数'[]'不对。为啥不对?因为char表示一个字符,而[]是两个字符(一个左括号字符,一个右括号字符),所以不可能拿单引号把它们括起来。另外,如果你只是声明了一个char类型的变量,那你就只可能保存'['或者是']',也就是一半括号。不可能把两个括号同时保存下来的。
      

  17.   

    public class Test2 { 
      String c; //String没赋值时默认值为null,满足条件
      void ptintTest2(){ 
        System.out.println("c="+c); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 

      

  18.   

    public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println("c="+c); 
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 
      

  19.   

    new分配内存时,Test对象在堆中存储空间全部清为二进制0,
    下面给出几种默认输出结果:
    类型       默认输出结果
    boolean    false
    char       [ ] //空格
    byte       0
    int        0
    long       0
    float      0.0
    double     0.0
    String     null   ...至于LZ所说得
      

  20.   

    顶35楼的,char只能存储单个字符,而不是用“”来进行赋值的
      

  21.   

    感觉很乱,楼主如果是想证明char的默认值为多少~直接打印就可以了啊·对于char,基本数据类型,它的默认值为0
      

  22.   

    你要想按那种格式输出,就这样写吧。public class Test2 {
        char c;  void ptintTest2(){
        System.out.println("c=[" + c + "]");
    }  public static void main(String[] args){
        Test2 T=new Test2();
        T.ptintTest2();
      }}
      

  23.   

    public class Test2 { 
      char c;   void ptintTest2(){ 
        System.out.println((int)c==0?"c=[]":"c="+c);
    }   public static void main(String[] args){ 
        Test2 T=new Test2(); 
        T.ptintTest2();   } 

    楼主是这个意思吗???呵呵..
      

  24.   

    大家帮我去看看 “关于this的用法” 的那个帖子....
      

  25.   

    大家帮我看看“关于this的用法”那个小帖子。。
      

  26.   

    public class Test2 { 
      static char c;   public static void main(String[] args){ 
       System.out.println("c="+c);   }