我是Java的初学者,我正在创建一个简单的文本RPG,我希望将字符信息存储在名称,作业,年龄等类中。例如:
class myChar
{
String name = "";
String job = "";
int age = 0;
//set, get, etc...
}
我希望用户能够被问到他们的姓名,工作等是什么,并将其传回课程,以便以后可以提取。我理解如何使用int完成这项工作,例如我有一个Stats类,其中存储了HP,攻击力等:
class Stats // Demonstrates Class
{
int hp = 10;
//set, get, etc...
public int hit() // Player is hit
{
hp --;
return hp;
}
}
所以当你看到我对它有一点把握但是我不太清楚如何得到它所以玩家可以输入这些信息并将其存储起来。我理解这种用法:
Stats myStats = new Stats("John", "Warrior", 30);
在识别信息方面,而不是如何让玩家自己选择信息。如果我听起来太模糊,我很抱歉,我会根据需要更新我的帖子!
编辑:我有一个主公共类,其中包含不同的“房间”等。它非常冗长,我知道如何获得用户输入。例如,我有一个命令窗口,允许用户“查看”,“使用”,“获取”等。所以我很了解用户输入。我只是不知道如何让用户输入信息并将此信息存储在外部类中以便稍后调用。
答案 0 :(得分:3)
据我了解,您希望获得某种用户输入,然后将此信息传递给班级。
你可以这样做:
import java.io.Reader;
//Receive input from System.in - console
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter the character's name!");
String name = br.readLine(); //Read line from input
System.out.print("Enter the job you want!");
String job = br.readLine();
System.out.print("What's your character's age?");
int age = Integer.parseInt(br.readLine());
myChar character = new myChar(name, type, age);
答案 1 :(得分:1)
如果我理解正确,您在程序开始时从用户那里获得输入时遇到问题。您可以使用Console类:
Console console = System.console();
String input = console.readLine("Enter input:");
或者,例如,Scanner类:
Scanner reader = new Scanner(System.in);
System.out.println("Enter the first number");
//get user input for a
String input = reader.nextLine();
Scanner
类在以不同形式获取输入时非常灵活,您可以在此处阅读文档:http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html
答案 2 :(得分:1)
要写入用户,您将写入标准输出。您只需使用以下命令即可:
System.out.println(yourString);
你可以拥有:
public class Stats
{
private static Scanner in = new Scanner(System.in);//need to import java.util.Scanner;
private String name;
private String occupation;
private int age;
public Stats()
{ //NB: you should error check, this is just a simple example
System.out.println("Enter name");
name=in.nextLine();
System.out.println("Enter occupation");
occupation=in.nextLine();
System.out.println("Enter age");
age=in.nextInt();
}
}
答案 3 :(得分:0)
这是阅读用户输入的经典问题。一个好的开始是学习如何使用控制台和Scanner类以String的形式获取信息。不要忘记你需要一个主要的方法来运行你的程序。这是一个起点。