我正在尝试编写这个java程序来添加,删除array-list中的项目。这就是我编码的内容:
import java.io.*;
import java.util.Scanner;
class abc
{
ArrayList<Int> nums = new ArrayList<Int>();
Scanner in = new Scanner(System.in);
int opt = 0;
public void addItem(int i) // add item to list
{
nums.add(i);
}
public void addItem(int i, int pos) // add item to specific position in list
{
nums.add(pos,i);
}
public void delItem(int pos) // delete item at specific position in list
{
nums.remove(pos);
}
public void delItem() // clear all items in list
{
nums.clear();
}
public void showItems()
{
for(int i = 0; i < nums.length ; i++)
{
System.out.println("nums[" + i + "] : " + nums[i]);
}
}
public void menu()
{
System.out.println("==MENU==");
System.out.println("1) Add an item");
System.out.println("2) Add an item to specific position");
System.out.println("3) Delete an item at specific position");
System.out.println("4) Clear all items in list");
System.out.println("5) Exit \n\n");
System.out.println("Choose an option");
opt = in.nextInt();
execute();
}
public void execute()
{
if(opt == 1)
{
System.out.println("Enter a value: ");
int a = in.nextInt();
addItem(a);
System.out.println("Item added");
}
else if(opt == 2)
{
System.out.println("Enter a value: ");
int a = in.nextInt();
System.out.println("Enter a position: ");
int b = in.nextInt();
addItem(a,b);
System.out.println("Item added");
}
else if(opt == 3)
{
System.out.println("Enter a position: ");
int a = in.nextInt();
delItem(a);
System.out.println("Item deleted");
}
else if(opt == 4)
{
delItem();
System.out.println("All Items deleted");
}
}
}
class pList
{
public void static main(String args[])
{
abc a = new abc();
while(true)
{
a.menu();
if(a.opt == 5)
{
break;
}
else if(a.opt > 5)
{
a.menu();
}
}
}
}
这是我收到的错误:
C:\Users\Dummy\Desktop\Java>javac pList.java
pList.java:87: error: <identifier> expected
public void static main(String args[])
^
pList.java:87: error: '(' expected
public void static main(String args[])
^
pList.java:87: error: invalid method declaration; return type required
public void static main(String args[])
^
3 errors
C:\Users\Dummy\Desktop\Java>
请让我知道如何解决这个问题以及我犯了错误的地方。提前致谢
答案 0 :(得分:5)
改变这个:
public void static main(String args[])
到
public static void main(String args[])
您还需要import java.util.ArrayList;
才能使用列表。而且您的列表不能是<int>
类型,必须是<Integer>
。 int是一个数字;整数是一个可以引用包含数字的对象的指针。阅读差异here。
答案 1 :(得分:1)
您希望您的返回类型在标识符之后:
public static void main(String args[])
此外,您有Int
的泛型,您希望这些是Integer
吗?您正在将基元添加到ArrayList中。
答案 2 :(得分:0)
如果您是学习程序员,则应使用NetBeans 您必须使用main方法的返回类型,因为它的返回类型设置为void