永发信息网

java中的编译问题

答案:3  悬赏:40  手机版
解决时间 2021-08-14 17:45
  • 提问者网友:孤山下
  • 2021-08-14 12:54

这个是书上的一个例子,可我在编译的时候无法通过。错在add(list1);及后面的几个add
import java.awt.*;import java.awt.event.*;
class WindowList extends Frame implements ItemListener,ActionListener{ List list1,list2; TextArea text1,text2; int index=0; WindowList() { setLayout(new FlowLayout()); list1=new List(3,false); list2=new List(3,false); text1=new TextArea(2,20); text2=new TextArea(2,20); list1.add("计算1+2+……"); list1.add("计算1*1+2*2+……"); list1.add("计算1*1*1+2*2*2+……"); for(int i=1;1<=100;i++) { list2.add("前"+i+"项和"); } add(list1); add(list2); add(text1); add(text2); list1.addItemListener(this); list2.addItemListener(this); setSize(400,200); setVisible(true); validate(); } public void itemStateChanged(ItemEvent e) { if(e.getItemSelectable()==list1) { text1.setText(list1.getSelectedItem()); index=list1.getSelectedIndex(); } } public void actionPerformed(ActionEvent e) { int n=list2.getSelectedIndex(),sum=0; String name=list2.getSelectedItem(); switch(index) { case 0: for(int i=1;i<=n+1;i++) { sum=sum+i; } break; case 1: for(int i=1;i<=n+1;i++) { sum=sum+i*i; } break; case 2: for(int i=1;i<=n+1;i++) { sum=sum+i*i*i; } break; default : sum=-100;
} text2.setText(name+"等于"+sum); }}
public class Example7_21 { public static void main(String[] args) { new WindowList(); }}

 

 

最佳答案
  • 五星知识达人网友:举杯邀酒敬孤独
  • 2021-08-14 13:38

add方法只能添加对象不可以添加list


如果要添加list ,你可以先遍历一下


再添加

全部回答
  • 1楼网友:舊物识亽
  • 2021-08-14 15:13

List 是接口,你将List list1=new List(3,false);List list2=new List(3,false);

接口可以实例化吗?

要实现List的实现类,才可以add(Object);

  • 2楼网友:天凉才是好个秋
  • 2021-08-14 13:44

你的编译器的问题

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯