2015-11-17 11 views
-2

Я только что попытался зарегистрироваться и сейчас на тренировке два, пытаясь понять это. Вот это код.Подпись Codewars Java exercise 2

public class Person { 
    String name; 

    public Person(String personName) { 
     name = personName; 
    } 

    public String greet(String yourName) { 
     return String.format("Hi %s, my name is %s", name, yourName); 
    } 
} 

Эти изменения, которые я сделал, что, казалось, имеет смысл в то время, но я все равно через него, чтобы найти то, что работает

public class Person { 
    String name; 

    public Person(String personName) 
    { 
     name = "John"; 
    } 

    public String greet(String "Tommy"); 
    { 
     return String.format("Hi %s, my name is %s", name, yourName); 
    } 
} 

Если бы я, чтобы вставить это в Eclipse, и запустите его, там он обманывает?

Я надеюсь, что это было достаточно ясно, и если есть какие-либо способы, я могу улучшить это сообщение или сделать что-нибудь более ясное, пожалуйста, дайте мне знать :) спасибо!

+1

Copy/Paste и не понимая обман. В коде много ошибок, я рекомендую вам читать основы Java. Я мог бы ответить вам исправлениями, но не уверен, как это поможет вам, если вы не начнете с основ Java. – Raf

+0

Этот вопрос не о программировании. OP участвовал в игре по кодированию на другом веб-сайте и спрашивает о правилах игры на этом другом сайте. –

+0

Я думаю, что ваше право, я действительно очень ржавый на вещах и, вероятно, лучше всего сосредоточиться на основах, спасибо, ребята, ребята –

ответ

0

Исправление и комментарии в коде ниже. Вы все поймете, если изучите некоторые основы языка, иначе это будет весело.

public class Person { 
    String name; 

    //This is a constructor and invoked during creation of object 
    public Person(String personName) 
    { 
      //makes no sense to pass personName to construct but, not use it 
      //name = "John"; 
      name = personName; 
    } 

    //A method signature does not end with semi-colon 
    //You cannot pass string literal in function as argument, "Tommy" incorrect arg 
    //public String greet(String "Tommy"); 
    public String greet(String greeting) 
    { 
      //not sure where you come up with yourName but, i replaced with greeting arg 
      return String.format("Hi %s, my name is %s", name, greeting); 
    } 

    //add main to show you how this works, when run execution enters main first 
    public static void main(String[] args) { 

     //an object of Person class is created passing "John" to its constructor  
     Person p = new Person("John"); 

     //p.greet() invokes the greet method of Person object 
     System.out.println(p.greet("Oops!")); 
    } 
} 
1

вам просто нужно поменять имя и ВашеИмя в string.Format функции(), см приведенный ниже код

return String.format("Hi %s, my name is %s", yourName, name); 
public class Person { 

    String name; 

    public Person(String personName) { 
     name = personName; 
    } 

    public String greet(String yourName) { 
     return String.format("Hi %s, my name is %s", yourName, name); 
    } 
}