2014-11-21 64 views
1

我正在使用扫描仪进行用户输入并将其分配给对象。我知道字符串是对象类的扩展,所以它应该是一个简单的赋值。这是我试过的。接受用户输入并将其分配给对象

string name = s.nextLine();// or s.next(); 
object obj = name;// or JOSN.parse(name); 

这是我的代码。我已经把一个数组列表替换成另一个数组列表。

 trans = new List<Transition>(nos); 

     for (i = 0; i < 5; i++) { 
      List<Transition>innerList = trans.get(i); 
      for (j = 0; j < 5; j++){ 
       String state = s.next(); 
       Transition reg = innerList.get(j).add(state); 
     }} 

我得到的错误是'type mismatch cant convert type string to Transition',但Transition只是一个对象。

+0

post more code,what is innerList – 2014-11-21 01:15:37

+0

我更新了我的问题 – Will 2014-11-21 01:27:14

回答

1
  OBJECT 
    /  \ 
    Transition String 

这就是层次结构的样子。

Transition is a subclass of Object,就像String is a subclass of Object一样。

如果两个类在同一个层次链中,那么可以安全地将一个子类的实例转换为超类的实例。在这种情况下,Transition and String不在同一个链中。

参考here了解更多信息。我基本问了你的问题,并得到了downvote。 :)

+0

@请注意看答案 – 2014-11-21 02:12:39

0

当我们正在铸造它必须有IS-A关系。意思是,字符串IS-A对象转换IS-A对象

在这个时候,我们争取在串并转换,我们看到的关系,不能转换(IS-A)字符串

这会给你铸造的问题,我们必须记住,每当我们尝试任何铸造它必须在层次结构中,与其他IS-A关系

相关问题