将二维字符串数组分配给一维对象数组 [英] Assign two dimensional string array to one dimensional object array

查看:126
本文介绍了将二维字符串数组分配给一维对象数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对这段代码感到困惑

String[][] str=new String[2][3];
Object[] obj=str;

此编译正常。因为Object是一个超类String是一个子类

This compiles fine. because Object is a super class String is a sub class

但是下面的代码会产生错误

but the following code produce errors

class Ex { } 
class Ex1 extends Ex { } 

class ExTest {
  public static void main(String[] args) 
  { 
    Ex1[][] ex1=new Ex1[2][3]; 
    Ex[] ex=ex1; 
  } 
} 

但此代码产生错误原因

推荐答案

它编译因为 obj 现在将持有两个一维 String [] objects。

It compiles because obj will now hold two one-dimensional String[] objects.

以下所有内容将编译:

String[][] str = new String[2][3];
Object obj1 = str;
Object[] obj2 = str;
Object[][] obj3 = str;

这篇关于将二维字符串数组分配给一维对象数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆