I';我试图将ArrayList公开(在java中),以便可以在不同的类中访问它,我做错了什么?
有一个错误,我不确定如果不在另一个类中访问ArrayList,我应该怎么做I';我试图将ArrayList公开(在java中),以便可以在不同的类中访问它,我做错了什么?,java,arraylist,Java,Arraylist,有一个错误,我不确定如果不在另一个类中访问ArrayList,我应该怎么做 package LifeGame; import java.util.ArrayList; public class Lists { public static void main(String[] args) { public ArrayList<String> tasks = new ArrayList<String>(); { // error on `tasks`
package LifeGame;
import java.util.ArrayList;
public class Lists {
public static void main(String[] args) {
public ArrayList<String> tasks = new ArrayList<String>(); { // error on `tasks`
tasks.add("Phone");
}
}
}
package生活游戏;
导入java.util.ArrayList;
公开班级名单{
公共静态void main(字符串[]args){
public ArrayList tasks=new ArrayList();{//关于'tasks'的错误`
任务。添加(“电话”);
}
}
}
方法中的变量只能通过名称从同一方法中访问。类成员(在方法外部定义的变量)是唯一可以是公共、私有等的成员。您必须在方法外部将其声明为类成员
package LifeGame;
import java.util.ArrayList;
public class Lists
{
public static ArrayList<String> tasks;
public static void main(String[] args)
{
tasks = new ArrayList<String>();
tasks.add("Phone");
}
}
package生活游戏;
导入java.util.ArrayList;
公开班级名单
{
公共静态数组列表任务;
公共静态void main(字符串[]args)
{
tasks=newarraylist();
任务。添加(“电话”);
}
}
所以你可以在任何地方使用它。例如:
import java.util.ArrayList;
public class Lists {
public static ArrayList<String> tasks;
public Lists() {
tasks = new ArrayList<String>();
}
public void addTask(String task) {
tasks.add(task);
}
public ArrayList<String> getTasks(){
return tasks;
}
public void printTasks() {
System.out.println(tasks);
}
public static void main(String[] args) {
Lists l = new Lists();
l.addTask("Phone");
l.addTask("Clean");
l.printTasks();
}
}
import java.util.ArrayList;
公开班级名单{
公共静态数组列表任务;
公开名单(){
tasks=newarraylist();
}
公共void addTask(字符串任务){
任务。添加(任务);
}
公共数组列表getTasks(){
返回任务;
}
公共任务(){
System.out.println(任务);
}
公共静态void main(字符串[]args){
列表l=新列表();
l、 addTask(“电话”);
l、 addTask(“Clean”);
l、 打印任务();
}
}
希望这有帮助。您的代码应该是:
package LifeGame;
import java.util.ArrayList;
public class Lists {
public static void main(String[] args) {
ArrayList<String> tasks = new ArrayList<String>();
tasks.add("Phone");
}
}
package生活游戏;
导入java.util.ArrayList;
公开班级名单{
公共静态void main(字符串[]args){
ArrayList tasks=新建ArrayList();
任务。添加(“电话”);
}
}
public
(或任何访问)修饰符不能在方法中使用。在方法外部声明数组列表。发布代码,而不是代码的图像。您需要的是类成员而不是方法变量。方法中的变量不能有访问修饰符。此外,add
周围的块({}
)也没有任何用处。看起来您试图使用双大括号初始化;你没有,但是不要。