下面的程序应执行10次,每次要求用户输入一对坐标。我将x和y坐标存储在两个独立的数组列表中。 程序应该能够检查一对坐标是否已经输入多次。如果发生这种情况,应该打印一条消息。 我的程序表现得特别时尚。除此之外,它似乎多次打印出消息。其次,如果用户输入一对坐标,我希望程序打印出一个味精说'错对'。我尝试在if后插入else语句,但那不行。总之,每次输入一对时,程序应该说'错误的对',但是如果输入了重复,它应该只是说'已经进入'了。我该怎么做?检查一个arraylist中两个连续坐标对在java中是否相等
public static void main(String[]args)
{
Scanner a=new Scanner(System.in);
//Arraylist stores all entered x values.
ArrayList<Integer> XValues=new ArrayList<Integer>();
//Arraylist stores all entered y values.
ArrayList<Integer> YValues=new ArrayList<Integer>();
for(int i=0;i<10;i++)
{
int xval;
int yval;
System.out.println("Try no. #"+(i+1));
System.out.print("Please enter x coordinate: ");
xval=a.nextInt();
System.out.print("Please enter y coordinate: ");
yval=a.nextInt();
if(i>1)
{
for(int c=0;c<XValues.size();c++)
{
for(int d=0;d<YValues.size();d++)
{
XValues.get(c);
YValues.get(d);
if(xval==XValues.get(c) && yval==YValues.get(d))
{
System.out.println("Sorry.Already entered.\n");
}
}
}
}
XValues.add(xval);
YValues.add(yval);
}
}
什么是错误你有? – MeshBoy 2015-03-25 04:18:19
那么,首先,该程序不会打印味精,直到我输入了大约3个坐标对。其次,它多次打印味精。 – 12dec1990 2015-03-25 04:25:11
如果用户输入一个重复坐标,是否要求他们换一对,直到他们输入一个尚未输入的坐标?即使它们是重复的,你想存储坐标吗? – mstbaum 2015-03-27 16:16:47