有没有办法在一行做到这一点:的Java:类型转换问题
TextView tv = (TextView) findViewById(R.id.lbSightName);
tv.setText("Some Text");
我愿做掉宣告中介电视,就像这样:
(TextView) findViewById(R.id.lbSightName).setText("Some Text");
不可能?
有没有办法在一行做到这一点:的Java:类型转换问题
TextView tv = (TextView) findViewById(R.id.lbSightName);
tv.setText("Some Text");
我愿做掉宣告中介电视,就像这样:
(TextView) findViewById(R.id.lbSightName).setText("Some Text");
不可能?
你可以,但它不是最好的做法
((TextView) findViewById(R.id.lbSightName)).setText("Some Text");
TextView.class.cast(findViewById(R.id.lbSightName).setText("Some Text");
凭借多一个组括号应该可以:
((TextView)findViewById(R.id.lbSightName)).setText("Some Text");
丹科schönjustkt! – 2011-03-21 17:32:07
((TextView) findViewById(R.id.lbSightName)).setText("Some Text");
只需加括号。
Grazie Roma paztulio! – 2011-03-21 17:31:50
当然
((TextView) findViewById(R.id.lbSightName)).setText("Some Text");
muchas gracias! – 2011-03-21 17:30:57
((TextView) findViewById(R.id.lbSightName)).setText("Some Text");
merci beaucoup! – 2011-03-21 17:30:23
((TextView)findViewById(R.id.lbSightName)).setText("Some thingy");
增加一个组括号的伎俩
Baie dankie Deepak! – 2011-03-21 17:32:54
谢谢,为什么不最佳实践? – 2011-03-21 17:09:49
@Hein - 您应该更喜欢多态/访问者模式来实现instanceof/casting来分派Java。 – 2011-03-21 17:18:57
你能举个例子吗? – 2011-03-21 17:29:20