Java数组和点
我有以下代码,用于根据从Java数组和点,java,list,Java,List,我有以下代码,用于根据从列表传递的点值对树地图进行排序,我将这些值分配给点,然后将其放入地图中,在对地图进行排序后,我希望在列表中分配值,并以如下格式打印点: 1, 2 3, 4 5, 6 有人能帮忙吗,这是我的代码: public class Solution { List<List<Integer>> nearestXsteakHouses(int totalSteakhouses, List<List<Integer>> allL
列表传递的点值对树地图进行排序,我将这些值分配给点,然后将其放入地图中,在对地图进行排序后,我希望在列表中分配值,并以如下格式打印点:
1, 2
3, 4
5, 6
有人能帮忙吗,这是我的代码:
public class Solution {
List<List<Integer>> nearestXsteakHouses(int totalSteakhouses, List<List<Integer>> allLocations,
int numSteakhouses) {
Point[] points = new Point[numSteakhouses];
for (int i = 0; i < points.length; i++) {
points[i] = new Point(allLocations.get(i).get(0), allLocations.get(i).get(1));
}
calculate(points, numSteakhouses);
return allLocations;
}
private List<Integer> calculate(Point[] point, int numSteakhouses) {
Point p = new Point();
p.setLocation(0, 0);
Map<Integer, Point> map = new TreeMap<>();
for (int i = 0; i < point.length; i++) {
if (i + 1 <= point.length) {
int distanceSq = (int) point[i].distanceSq(p);
map.put(distanceSq, point[i]);
}
}
for (Entry<Integer, Point> entry : map.entrySet()) {
System.out.println((int) entry.getValue().getX() + " " + (int) entry.getValue().getY());
}
return null;
}
public static void main(String[] args) {
Solution s = new Solution();
int[] a = { -3, 0, 199 };
List<Integer> b = new ArrayList();
b.add(1);
b.add(-3);
List<Integer> c = new ArrayList();
c.add(1);
c.add(2);
List<Integer> d = new ArrayList();
d.add(1);
d.add(4);
List<Integer> e = new ArrayList();
e.add(2);
e.add(7);
List<List<Integer>> r = new ArrayList<>();
r.add(b);
r.add(c);
r.add(d);
r.add(e);
List<List<Integer>> nearestXsteakHouses = s.nearestXsteakHouses(4, r, 3);
System.out.println(nearestXsteakHouses);
}
}
不要懒惰;使用嵌套的for循环来打印列表,而不是简单的print语句。我没有访问main方法的权限,它将打印返回的结果,所以有什么建议吗?
[[1, 2, 1, -3, 1, 4]]