2015-11-12 2 views
1

Хорошо, так что в основном я создал несколько движущихся НЛО над городом. Я очень новичок в области графики на Java и выложил вопросы о некоторых моих работах 2 из 5 раз, когда использовал графику. Поэтому моя главная цель состоит в том, чтобы убедиться, что НЛО отскакивают друг от друга, когда они сталкиваются, но я получаю эту ошибку в следующем разделе моего кода:Фактические и формальные списки аргументов различаются по длине, но они одинаковой длины?

1 error found: 
[line: 56] 
Error: method collision in class UFO cannot be applied to given types; 
    required: no arguments 
    found: UFO 
    reason: actual and formal argument lists differ in length 

Раздел Кодекса:

static UFO[] swarm = new UFO[5]; //this is my UFO array attribute and it is static to work with the UFO collision method 

    for (int i = 0; i < swarm.length; i++) 
      for (int j = i+1; j<swarm.length; j++) 
      swarm[i].collision(swarm[j]); 
+1

Как выглядит метод 'UFO # collision'? – MadProgrammer

+0

@MadProgrammer заботится о чате, это может помочь с вашим пониманием? –

+3

Ваше определение для метода столкновения, скорее всего, не принимает НЛО в качестве аргумента. :) Похоже, у него нет аргументов, определенных для него. В Java каждый параметр должен быть определен в определении функции. Итак: public void collision (UFO ufo) {} –

ответ

0

столкновений() метод должен быть определен следующим образом, чтобы служить вам показать:

void collision(UFO ufo) { 
    // collision implementation 
} 

Возвращаемый тип не должен быть недействительным (это может быть что угодно, в том числе Object на самом деле, в зависимости от того, возвращает ли это что-то), но метод подписи должен иметь один параметр типа UFO.

+1

Хорошо, да, я определил его неправильно. Спасибо! Однако какая разница в использовании '(UFO other)' и '(UFO [] swarm)'? Первый способ, который работал для меня после @Cosmic, предложил то же самое. Просто, чтобы вы знали, я создал массив рой вне класса НЛО, поэтому я думаю, что это может изменить ситуацию? –

+1

О, ты просто ответил на мой вопрос! –

+0

Исправлено, что почти сразу, когда я увидел мою оплошность :). Хороший глаз. –

Смежные вопросы