对象的java字符串

对象的java字符串,java,string,object,Java,String,Object,我想将字符串转换为对象。我寻找相关的话题,但找不到答案。我的代码是: amountShip = 5; String name = ReadConsole.nextString(); //-->variabe of the object "Player" gamers[i] = Player.String2Object(name, 0); Player String2Object(String name, int amountShip) { Object o = name; P

我想将
字符串
转换为对象。我寻找相关的话题,但找不到答案。我的代码是:

amountShip = 5;
String name = ReadConsole.nextString(); //-->variabe of the object "Player"
gamers[i] = Player.String2Object(name, 0);

Player String2Object(String name, int amountShip) {
   Object o = name;
   Player temp = (Player)o;
   temp = new Player(name, amountShip);
   return temp;             
}

class Player {
    Player (String name, int amountShip) {
        name = name;
        ships = amountShip;
    }
    Player pl = new Player(String name, int amountShip);
}
上面说

无法将java.lang.String强制转换为Gameobjects.Player

我的目的是动态创建两个具有不同实例名称的播放器对象。例如,如果有人键入“3”,我想创建

Player p1 = new Player(x,y);
Player p2 = new Player(x,y);
Player p3 = new Player(x,y);

提前感谢您

字符串
无法通过强制转换转换为“Spiler”。相反,您可以使用
序列化
,或者创建一个方法来解析来自某些给定输入的对象属性。

字符串
不能通过强制转换转换为“Spiler”。相反,您可以使用
序列化
,或者创建一个方法来解析来自某些给定输入的对象属性。

字符串
不能通过强制转换转换为“Spiler”。相反,您可以使用
序列化
,或者创建一个方法来解析来自某些给定输入的对象属性。

字符串
不能通过强制转换转换为“Spiler”。相反,您可以使用
序列化
,或者创建一个方法来解析来自某个给定输入的对象属性。

我想您想要的就是这样做

Player String2Object(String name, int amountShip) {
    return new Player(name, amountShip);
}
或者干脆

gamers[i] = new Player(name, 0);
而不是

gamers[i] = Player.String2Object(name, 0);
另一种方法是从控制台(或文件)读取行,并使用
String.split
函数提取
name
amountShip

编辑:

您不能像问题中那样动态创建实例。但是您可以像这样创建数组
Player[]

// n is some int entered by user.
Player[] players = new Player[n];
for(int i = 0; i < n; ++i) {
    players[i] = new Player(x, y);
}

我猜你想做的就是这样

Player String2Object(String name, int amountShip) {
    return new Player(name, amountShip);
}
或者干脆

gamers[i] = new Player(name, 0);
而不是

gamers[i] = Player.String2Object(name, 0);
另一种方法是从控制台(或文件)读取行,并使用
String.split
函数提取
name
amountShip

编辑:

您不能像问题中那样动态创建实例。但是您可以像这样创建数组
Player[]

// n is some int entered by user.
Player[] players = new Player[n];
for(int i = 0; i < n; ++i) {
    players[i] = new Player(x, y);
}

我猜你想做的就是这样

Player String2Object(String name, int amountShip) {
    return new Player(name, amountShip);
}
或者干脆

gamers[i] = new Player(name, 0);
而不是

gamers[i] = Player.String2Object(name, 0);
另一种方法是从控制台(或文件)读取行,并使用
String.split
函数提取
name
amountShip

编辑:

您不能像问题中那样动态创建实例。但是您可以像这样创建数组
Player[]

// n is some int entered by user.
Player[] players = new Player[n];
for(int i = 0; i < n; ++i) {
    players[i] = new Player(x, y);
}

我猜你想做的就是这样

Player String2Object(String name, int amountShip) {
    return new Player(name, amountShip);
}
或者干脆

gamers[i] = new Player(name, 0);
而不是

gamers[i] = Player.String2Object(name, 0);
另一种方法是从控制台(或文件)读取行,并使用
String.split
函数提取
name
amountShip

编辑:

您不能像问题中那样动态创建实例。但是您可以像这样创建数组
Player[]

// n is some int entered by user.
Player[] players = new Player[n];
for(int i = 0; i < n; ++i) {
    players[i] = new Player(x, y);
}

您不需要将
字符串
转换为对象,因为
字符串
是默认的对象,因此不需要强制转换。您可以执行以下操作:

Player String2Object(String name, int amountShip) {
    Player temp = new Player(name, amountShip);
    return temp;             
}

如果你问自己为什么你的代码没有按原来的方式工作,那是因为你试图将
字符串
投射到
播放器
中。您的对象
o
指向
字符串
,因此当您尝试执行
(播放器)时o
您试图将字符串强制转换为
播放机
,但它们之间没有任何关系。

您不需要将
字符串
转换为对象,因为
字符串
是默认对象,因此不需要强制转换。您可以执行以下操作:

Player String2Object(String name, int amountShip) {
    Player temp = new Player(name, amountShip);
    return temp;             
}

如果你问自己为什么你的代码没有按原来的方式工作,那是因为你试图将
字符串
投射到
播放器
中。您的对象
o
指向
字符串
,因此当您尝试执行
(播放器)时o
您试图将字符串强制转换为
播放机
,但它们之间没有任何关系。

您不需要将
字符串
转换为对象,因为
字符串
是默认对象,因此不需要强制转换。您可以执行以下操作:

Player String2Object(String name, int amountShip) {
    Player temp = new Player(name, amountShip);
    return temp;             
}

如果你问自己为什么你的代码没有按原来的方式工作,那是因为你试图将
字符串
投射到
播放器
中。您的对象
o
指向
字符串
,因此当您尝试执行
(播放器)时o
您试图将字符串强制转换为
播放机
,但它们之间没有任何关系。

您不需要将
字符串
转换为对象,因为
字符串
是默认对象,因此不需要强制转换。您可以执行以下操作:

Player String2Object(String name, int amountShip) {
    Player temp = new Player(name, amountShip);
    return temp;             
}

如果你问自己为什么你的代码没有按原来的方式工作,那是因为你试图将
字符串
投射到
播放器
中。您的对象
o
指向一个
字符串
,因此当您尝试执行
(Player)o
时,您试图将一个字符串投射到
播放器
中,它们之间没有任何关系。

对象o=name;玩家温度=(玩家)o你认为这有什么作用?如果你回答了它,那么你就解决了你的问题。Java很棒,但它不能变魔术!不过,您应该真正修复格式并提供更多信息(请参见)
objecto=name;玩家温度=(玩家)o你认为这有什么作用?如果你回答了它,那么你就解决了你的问题。Java很棒,但它不能变魔术!不过,您应该真正修复格式并提供更多信息(请参见)
objecto=name;玩家温度=(玩家)o你认为这有什么作用?如果你回答了它,那么你就解决了你的问题。Java很棒,但它不能变魔术!不过,您应该真正修复格式并提供更多信息(请参见)
objecto=name;玩家温度=(玩家)o你认为这有什么作用?如果你回答了,那么你就解决了你的问题