"x = (something)" 在 java 中是什么意思?

what does "x = (something)" mean in java?

我学Android不知道java(还),在示例代码中找到了这样的语句:

TextView mainTextView;
mainTextView = (TextView) findViewById(R.id.main_textview);

所以,问题是(如 header 所说):“= ( ... )”是什么意思?

这意味着 findViewById 方法正在将 XML 元素转换为 TextView。

为 Object TextView 创建 objectref

TextView mainTextView;

findViewById 是一个具有参数 R.id.main_textview 的方法,返回值被转换为 TextView 类型并存储在 mainTextView

mainTextView = (TextView) findViewById(R.id.main_textview);

方法 findViewById 具有以下签名:

public View findViewById (int id)

意思是returns一个通用的非指定View.

因为您的代码显然需要使用更具体的(在 class 层次结构的含义中)TextView,所以它是 typecastedTextView 通过在 findViewById.

返回的值之前添加 (TextView)

虽然这是一种常见的做法,但它有点危险,因为它 假设 findViewById 返回的值在这种情况下是类型 TextView.如果不是,您将得到一个运行时异常 ClassCastException