首页 > 解决方案 > 在Java和python实现中将数组转换为字符串

问题描述

下面的代码让我无法理解(String)所做的事情。我假设它正在使用附加到 java 面板(setvalue)的 IR,将 memoryArray 转换为字符串,并将 IR 的值设置为该字符串,但我不确定。如果是,这与执行 toString() 有何不同,因为它也用于将数组转换为字符串。

另外,我想知道这是否可以简单地在 python 中完成。

 public static final int IR = 1;   
 int address2 = 3;
          
 Object[][] memoryArray = new Object[256][17];
 int memR2 = address2/16;
 int memC2 = address2 % 16 + 1;
 IR.setValue((" "+(String) memoryArray[memoryRow][memoryCol]).trim()); 
 System.out.println(IR);

标签: javaarraysstringcasting

解决方案


当数组包含 at 的对象时,强制转换(String) memoryArray[memoryRow][memoryCol]才会起作用,否则会抛出运行时。String[memoryRow][memoryCol]ClassCastException

它不同于调用toString()方法将任何类的对象Object转换String. 如果对象 at[memoryRow][memoryCol]恰好是null,则调用该toString方法将导致NullPointerException.


推荐阅读