[英]Getting the output from a arraylist
Im fairly new to java and ive been doing som searching for an answer to my problem but i just cant seem to get the output from the arraylist.我对java相当陌生,我一直在寻找我的问题的答案,但我似乎无法从数组列表中获得输出。 I get a red mark under Ordtildikt
String arrayoutput = kontrollObjekt.Ordtildikt;
我在 Ordtildikt
String arrayoutput = kontrollObjekt.Ordtildikt;
下得到一个红色标记String arrayoutput = kontrollObjekt.Ordtildikt;
saying it cannot be resolved or is not a field.说它无法解决或不是一个字段。 The program is supposed to get userinput and create an arraylist from the input
该程序应该获取用户输入并从输入创建一个数组列表
Interface class接口类
import javax.swing.JOptionPane;
public class Grensesnitt {
public static void main(String[] args) {
Grensesnitt Grensesnitt = new Grensesnitt();
Grensesnitt.meny();
}
Kontroll kontrollObjekt = new Kontroll();
private final String[] ALTERNATIVER = {"Registrere ord","Skriv dikt","Avslutt"};
private final int REG = 0;
private final int SKRIV = 1;
public void meny() {
boolean fortsett = true;
while(fortsett) {
int valg = JOptionPane.showOptionDialog(
null,
"Gjør et valg:",
"Prosjektmeny",
JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE,
null,
ALTERNATIVER,
ALTERNATIVER[0]);
switch(valg) {
case REG: regNy();
break;
case SKRIV: regDikt();
break;
default: fortsett = false;
}
}
}
int i = 0;
public void regNy() {
while(i<=16)
{
String Ord = JOptionPane.showInputDialog("Skriv or til diktet: ");
kontrollObjekt.regNy(Ord);
//String Diktord = JOptionPane.showInputDialog("Skriv ord til diktet: ");
//kontrollObjekt.regNy(Diktord);
i = i + 1;
}
}
public void regDikt() {
String arrayoutput = kontrollObjekt.Ordtildikt;
JOptionPane.showMessageDialog(null, arrayoutput);
}
//JOptionPane.showMessageDialog(null, kontrollObjekt.Diktord);
}
Controll Class控制类
import java.util.ArrayList;
public class Kontroll {
public ArrayList<String> Diktord = new ArrayList<String>();
public void regNy(String Ord) {
Diktord.add(Ord);
Diktord.add("\n");
}
public String Ordtildikt(String Ord) {
return Ord=Diktord.toString();
}
}
This is a method, not a variable.这是一个方法,而不是一个变量。
kontrollObjekt.Ordtildikt;
You are trying to call this?你想叫这个?
public String Ordtildikt(String Ord) {
return Ord=Diktord.toString();
}
1) Make it return Diktord.toString();
1) 让它
return Diktord.toString();
2) Get rid of String Ord
unless you are going to use that parameter 2) 去掉
String Ord
除非你打算使用那个参数
3) Actually call the method, eg Put some parenthesis. 3)实际调用该方法,例如放置一些括号。
String arrayoutput = kontrollObjekt.Ordtildikt();
Also, I think this should be the correct regNy
method unless you want to falsely report that the list is twice its size.另外,我认为这应该是正确的
regNy
方法,除非您想错误地报告列表是其大小的两倍。
public void regNy(String Ord) {
Diktord.add(Ord + "\n");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.