0

我从这里得到了这个示例代码:

http://www.tutorialspoint.com/java/java_string_copyvalueof.htm

public class Test{
   public static void main(String args[]){
      char[] Str1 = "This is really not immutable!!";
      String Str2;

      Str2 = copyValueOf( Str1 );
      System.out.println("Returned String " + Str2);

      Str2 = copyValueOf( Str1, 5, 10 );
      System.out.println("Returned String " + Str2);

   }
}

这段代码对我不起作用。

  1. 字符数组定义为字符串。
  2. copyValueOf 无法识别!

现在我把它改成这样:

    char[] Str1 = {'t','o','o','k'};
      String Str2;

      Str2 = copyValueOf( Str1 );
      System.out.println("Returned String " + Str2);

      Str2 = copyValueOf( Str1, 5, 10 );
      System.out.println("Returned String " + Str2);

仍然 copyValueOf 不起作用?我已经检查过这个方法,它存在于文档中!

4

3 回答 3

4
  1. 与 C 不同,char[]is 不是 a String,反之亦然。
  2. 您需要指定类:

    Str2 = String.copyValueOf( Str1 );
    
于 2012-11-04T05:27:35.923 回答
3

您可能缺少代码中的静态导入。将此添加到文件的顶部:

import static java.lang.String.copyValueOf;

或者,您可以(也许应该)明确指定类。因为copyValueOf是一个静态成员,String它看起来像这样:

String.copyValueOf(Str1);
于 2012-11-04T05:29:25.547 回答
0

以下是问题:

于 2012-11-04T05:31:11.363 回答