如何将一种方法中的变量用于另一种方法?

所以我想知道是否有人可以告诉我如何将变量从一种方法调用/引用到另一种方法。例如,


public static void main(String[] args) 

{

    System.out.println("Welcome to the game of sticks!");

    playerNames();

    coinToss();

}


public static void playerNames()

{

    Scanner input = new Scanner(System.in);

    System.out.println();


    System.out.print("Enter player 1's name: ");

    String p1 = input.nextLine();


    System.out.print("Enter player 2's name: ");

    String p2 = input.nextLine();


    System.out.println();

    System.out.println("Welcome, " + p1 + " and " + p2 + ".");

}


public static void coinToss()

{

    System.out.println("A coin toss will decide who goes first:");

    System.out.println();

    Random rand = new Random();

    int result = rand.nextInt(2);

    result = rand.nextInt(2);

    if(result == 0)

    {

        System.out.println(p1 + " goes first!");

    }

    else

    {

        System.out.println(p2 + " goes first!");

    }           

}

我想在 coinToss() 中使用 playerNames() 中的 p1 和 p2,这样我就可以简单地宣布谁先走,但我就是不知道如何调用这些变量。


我的问题与其他人相比并没有什么不同,但是我无法理解其他人给出的答案。一旦我发布了这个,我就从一群善良的人那里得到了答案:)


MM们
浏览 275回答 3
3回答

蛊毒传说

我假设您是 Java 新手,因为您似乎不熟悉字段的概念(即您可以将变量放在方法之外)。public class YourClass {    static String p1;    static String p2;    public static void main(String[] args)     {        System.out.println("Welcome to the game of sticks!");        playerNames();        coinToss();    }    public static void playerNames()    {        Scanner input = new Scanner(System.in);        System.out.println();        System.out.print("Enter player 1's name: ");        p1 = input.nextLine();        System.out.print("Enter player 2's name: ");        p2 = input.nextLine();        System.out.println();        System.out.println("Welcome, " + p1 + " and " + p2 + ".");    }    public static void coinToss()    {        System.out.println("A coin toss will decide who goes first:");        System.out.println();        Random rand = new Random();        int result = rand.nextInt(2);        result = rand.nextInt(2);        if(result == 0)        {            System.out.println(p1 + " goes first!");        }        else        {            System.out.println(p2 + " goes first!");        }               }}

Qyouu

我所要做的就是在外面创建实例/静态变量!像这样:static String name1;static String name2;这很容易。感谢大家的帮助!

子衿沉夜

您正在搜索的内容称为实例变量,请查看。 https://www.tutorialspoint.com/java/java_variable_types.htm
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java