Я создал класс, который возвращает 3 значения arraylist в основную программу, но когда я использую свой метод get()
, компилятор выдает мне ошибку en, которая не может найти этот метод - символ. Я пробовал делать то же самое, но не с арраистом, а с массивом, и, похоже, он работает. Но я не могу понять, как это будет с массивом.Получить метод из класса на Arraylist
// Ошибка на кнопку «action evt» на второй отметке кода.
Ошибка msg: «Не удалось найти символьный метод getmarka()».
Я размещаю код ниже, возможно, вы можете мне помочь.
Класс с методом GET, который возвращает значение:
public class Cars
{
private String modelo,marka;
private int kyvismos;
public Cars(String m,String ma,int k)
{
modelo=m;
marka=ma;
kyvismos=k;
}
public String getmodelo()
{
return modelo;
}
public String getmarka()
{
return marka;
}
public int getkyvismos()
{
return kyvismos;
}
public void setmodelo(String m)
{
modelo=m;
}
public void setmarka(String ma)
{
marka=ma;
}
public void setkyvismos(int k)
{
kyvismos=k;
}
public String toString()
{
return modelo+","+marka+","+kyvismos;
}
}
Вот класс, который получает категорию класса сверху.
public class MyFrame extends Frame
{
ArrayList<Cars> Cars = new ArrayList<>();
private Button add;
private Button show;
private Button quit;
public MyFrame(String title)
{
super(title);
resize(500,300);
setResizable(false);
setLayout(new GridLayout(3,1));
add=new Button("ADD");
show=new Button("SHOW");
quit=new Button("QUIT");
add (add);
add (show);
add (quit);
}
public boolean action(Event evt,Object arg)
{
if(evt.target.equals(add))
{
String value1= JOptionPane.showInputDialog("Enter Car Model ");
String value2= JOptionPane.showInputDialog("Enter Car Mark ");
int value3= Integer.parseInt(JOptionPane.showInputDialog("Enter Kyvismos "));
Integer I=new Integer(value3);
Cars.add(new Cars(value1,value2,value3));//or pinakas.add(value);
}
else
if(evt.target.equals(show))
{
String s="";
int i;
for(i=0;i<Cars.size();i++){
**//here is the error on Cars.getkyvismos() or getmarka() or getmodelo();**
//if(Cars.getkyvismos()>1900)
s=s+Cars.getmarka()+Cars.getmodelo()+"\n";
}
JOptionPane.showMessageDialog(null, "cars with kyvismo >1900 are \n " + s);
}
else
if(evt.target.equals(quit))
{
System.exit(0);
}
return true;
}
}
Спасибо заранее и извините, если у него вопрос новичков!
Возможный дубликат [Что означает ошибка компиляции «Не удается найти символ»?] (Http://stackoverflow.com/questions/25706216/what-does-a- не может-find-symbol-compilation-error-mean) – azurefrog
Измените свой вопрос с помощью ** точного ** сообщения об ошибке. –
@ Ошибка в Code-Apprentice msg: «Невозможно найти метод-символ getmarka()». – foutzos