Java 如何从同一类中的前一个方法访问ArrayList?
在这个项目中,我试图从一个只包含日期字符串的ArrayList中访问信息 这是我试过的课程的一部分。如果没有整堂课让人难以理解,我可以编辑Java 如何从同一类中的前一个方法访问ArrayList?,java,arraylist,methods,Java,Arraylist,Methods,在这个项目中,我试图从一个只包含日期字符串的ArrayList中访问信息 这是我试过的课程的一部分。如果没有整堂课让人难以理解,我可以编辑 public ArrayList<String> getTicketDates(){ ArrayList<String> theDateArray= new ArrayList<>(); int i; for (i=0; i <tickets.siz
public ArrayList<String> getTicketDates(){
ArrayList<String> theDateArray= new ArrayList<>();
int i;
for (i=0; i <tickets.size(); i++){
if(tickets .get(i).getPurchased()== false){
theDateArray.add(tickets.get(i).getDate());
}
}
for(int f=0; f<theDateArray.size();f++){
System.out.println(theDateArray.get(f)+ " ");
}
return theDateArray;
}
public int getTickets(String date){
int tix= theDateArray.indexOf(date);
int occurrences= Collections.frequency(theDateArray, tix);
if (tix>=0){
System.out.println(occurrences);
}
return occurrences;
}
public ArrayList getTicketDates(){
ArrayList theDateArray=新的ArrayList();
int i;
对于(i=0;iYourtheDateArray
变量范围是getTicketDates()
方法的本地变量,因此您无法在另一个方法中访问它,因此将其声明为实例变量,如下所示:
public class YourTicketsClass {
//declare ArrayList as an instance variable
ArrayList<String> theDateArray= new ArrayList<>();
public ArrayList<String> getTicketDates(){
int i;
for (i=0; i <tickets.size(); i++){
if(tickets .get(i).getPurchased()== false){
theDateArray.add(tickets.get(i).getDate());
}
}
for(int f=0; f<theDateArray.size();f++){
System.out.println(theDateArray.get(f)+ " ");
}
return theDateArray;
}
public int getTickets(String date){
int tix= theDateArray.indexOf(date);
int occurrences= Collections.frequency(theDateArray, tix);
if (tix>=0){
System.out.println(occurrences);
}
return occurrences;
}
}
公共类YourTicketClass{
//将ArrayList声明为实例变量
ArrayList theDateArray=新的ArrayList();
公共数组列表getTicketDates(){
int i;
对于(i=0;i定义方法外部的数组列表,然后填充方法内部的列表。如下所示:
public class YourdataClass {
private List<String> theDateArray = new ArrayList<String>();
public ArrayList<String> getTicketDates(){
int i;
for (i=0; i <tickets.size(); i++){
if(tickets .get(i).getPurchased()== false){
theDateArray.add(tickets.get(i).getDate());
}
}
for(int f=0; f<theDateArray.size();f++){
System.out.println(theDateArray.get(f)+ " ");
}
return theDateArray;
}
public int getTickets(String date){
int tix= theDateArray.indexOf(date);
int occurrences= Collections.frequency(theDateArray, tix);
if (tix>=0){
System.out.println(occurrences);
}
return occurrences;
}
}/* end class */
public类YourdataClass{
private List theDateArray=new ArrayList();
公共数组列表getTicketDates(){
int i;
对于(i=0;i),您应该阅读java中的变量作用域。您的arraylist当前是一个局部变量,因此只能在局部作用域中使用。对不起,我还是一个新手。这与我9分钟前发布的答案有什么不同?