无法从void转换为String

时间:2013-10-09 20:15:22

标签: java

驱动程序类:

String world = methods.printHelloWorld("Hello, world!");
{
    System.out.println(world);
}

方法类:

public void printHelloWorld(String world)
{
    world = "Hello, world!";
}

提示:(较大项目的一部分)

void printHelloWorld()

参数:无

什么也没有。直接打印到System.out字符串" Hello,world!"

我收到了无法从void转换为String的错误消息。我不能在我的方法类中使用return。我知道我可以更改public void printHelloWorld(String world) to public String printHelloWorld(String world),但这不是我的老师希望我们做的事情。 (我已尝试过那些)

6 个答案:

答案 0 :(得分:2)

您无法转换为String,因为无法转换。返回类型void表示“不返回值”。

此外,您可以将方法内的值分配给形式参数(除非它被声明为final),并且它不会更改调用方法时使用的实际参数的值。

也许你正试图这样做:

String world = "Hello, world!";
methods.printHelloWorld(world);

public void printHelloWorld(String world)
{
    System.out.println(world);
}

答案 1 :(得分:1)

  

我知道我可以将public void printHelloWorld(String world)更改为public String printHelloWorld(String world),但这不是我老师想要我们做的事情。 (我已尝试过那些)

然后您可以在方法内部打印。类似的东西:

public void printHelloWorld(String world)
{
    System.out.println(world);
}

答案 2 :(得分:1)

异常非常明确:您无法从void转换为String。

这就是你如何实现你想要做的事情:

public void printHelloWorld(String world) {
    System.out.println(world);
}

然后

methods.printHelloWorld("Hello, world!");

答案 3 :(得分:0)

public void printHelloWorld(String world)
{
    world = "Hello, world!";
    System.out.println(world);
}

答案 4 :(得分:0)

方法Class中的

  public static String world = "Hello, world!";

在驱动程序类

 String world1 = methods.world;
 System.out.println(world1);

答案 5 :(得分:0)

您的方法应该返回String

public String printHelloWorld(String world)
{
    world = "Hello, world!";
    return world;
}

或简单

public String printHelloWorld(String world)
{
    return "Hello, world!";
}

干杯!!