Hibernate возвращать объект не список [дубликат]

STEP-1. пряжа добавить реактивные нативные контакты --save

STEP-2. реакция-нативная связь-нативные-контакты

STEP_3. Добавьте следующий код вручную в указанные файлы:

AndroidManifest.xml

Добавьте следующие разрешения: -

   <uses-permission android:name="android.permission.READ_PROFILE" />   
   <uses-permission android:name="android.permission.READ_CONTACTS" />  
   <uses-permission android:name="android.permission.WRITE_CONTACTS" />

MainApplication.java

g8]
import com.rt2zz.reactnativecontacts.ReactNativeContacts; //import this package

protected List<ReactPackage> getPackages() {
      mCallbackManager = new CallbackManager.Factory().create();
      return Arrays.<ReactPackage>asList(
      new ReactNativeContacts()  // Add this
   );
 }

android / settings.gradle

include ':react-native-contacts'
project(':react-native-contacts').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-contacts/android')

android / app / build.gradle Внутри блока зависимостей добавьте это: -

 compile project(':react-native-contacts')

Примечание: Установка также может быть выполнена с использованием npm, если вы не используете пряжу. Например: -

  1. npm установить реакцию-на-на-контакты
  2. реакция-нативная ссылка реакция-нативный-контакты
62
задан rodrigo-silveira 2 July 2015 в 01:45
поделиться

7 ответов

Предполагается, что toString возвращает String.

public String toString() { 
    return "Name: '" + this.name + "', Height: '" + this.height + "', Birthday: '" + this.bDay + "'";
} 

Предлагаю вам использовать функции IDE для генерации метода toString. Не указывайте его вручную.

Например, Eclipse может сделать это, если вы просто щелкните правой кнопкой мыши исходный код и выберите Source > Generate toString

97
ответ дан adarshr 25 August 2018 в 02:23
поделиться

Вы не можете вызвать конструктор, как если бы это был обычный метод, вы можете вызвать его только с помощью new, чтобы создать новый объект:

Kid newKid = new Kid(this.name, this.height, this.bDay);

Но построение нового объекта из вашего Метод toString () - это не то, что вы хотите делать.

3
ответ дан Adrian Pronk 25 August 2018 в 02:23
поделиться

Вы можете создать новый объект в toString (). используйте

return "Name = " + this.name +" height= " + this.height;

вместо

return Kid(this.name, this.height, this.bDay);

Вы можете изменить возвращаемую строку, как требуется. Существуют и другие способы хранения даты вместо каландра.

4
ответ дан cricket_007 25 August 2018 в 02:23
поделиться

Ну, на самом деле вам нужно будет возвратить что-то вроде этого, потому что toString должно возвращать строку

public String toString() {
 return "Name :" + this.name + "whatever :" + this.whatever + "";
}

, и вы действительно делаете что-то не так в конструкторе, который вы задали переменной, которую пользователь установил для имени, в то время как вам нужно сделать обратное. Что вам не следует делать

n = this.name

Что вы должны делать

this.name = n

Надеюсь, это поможет благодаря

1
ответ дан james large 25 August 2018 в 02:23
поделиться

Метод Java toString ()

Если вы хотите представить любой объект в виде строки, то появляется метод toString ().

Метод toString () возвращает строковое представление объекта.

Если вы печатаете какой-либо объект, java-компилятор внутренне вызывает метод toString () для объекта. Таким образом, переопределение метода toString () возвращает желаемый результат, это может быть состояние объекта и т. Д. Зависит от вашей реализации.

Преимущество метода Java toString ()

By переопределяя метод toString () класса Object, мы можем вернуть значения объекта, поэтому нам не нужно много писать код.

Выход без метода toString ()

class Student{  
 int id;  
 String name;  
 String address;  

 Student(int id, String name, String address){  
 this.id=id;  
 this.name=name;  
 this.address=address;  
 }  

 public static void main(String args[]){  
   Student s1=new Student(100,”Joe”,”success”);  
   Student s2=new Student(50,”Jeff”,”fail”);  

   System.out.println(s1);//compiler writes here s1.toString()  
   System.out.println(s2);//compiler writes here s2.toString()  
 }  
}  

Output:Student@2kaa9dc
       Student@4bbc148

Вы можете видеть в примере выше # 1. печать s1 и s2 печатает значения Hashcode для объектов, но я хочу напечатать значения этих объектов. Поскольку java-компилятор внутренне вызывает метод toString (), переопределение этого метода возвращает указанные значения. Давайте рассмотрим это с приведенным ниже примером:

Example#2

Output with overriding toString() method

class Student{  
 int id;  
 String name;  
 String address;  

 Student(int id, String name, String address){  
 this.id=id;  
 this.name=name;  
 this.address=address;  
 }  

//overriding the toString() method  
public String toString(){ 
  return id+" "+name+" "+address;  
 }  
 public static void main(String args[]){  
   Student s1=new Student(100,”Joe”,”success”);  
   Student s2=new Student(50,”Jeff”,”fail”);  

   System.out.println(s1);//compiler writes here s1.toString()  
   System.out.println(s2);//compiler writes here s2.toString()  
 }  
} 

Output:100 Joe success
       50 Jeff fail

Обратите внимание, что toString () в основном связано с понятием полиморфизма в Java. В Eclipse попробуйте щелкнуть по кнопке toString () и щелкнуть правой кнопкой мыши по ней. Затем нажмите «Открыть декларацию» и посмотрите, откуда приходит Superclass toString ().

7
ответ дан Linux Le 25 August 2018 в 02:23
поделиться

Следующий код - это образец. Вопрос, основанный на том же, вместо использования преобразования на основе IDE, есть более быстрый способ реализовать, чтобы в будущем произошли изменения, нам не нужно изменять значения снова и снова?

@Override
    public String toString() {
        return "ContractDTO{" +
                "contractId='" + contractId + '\'' +
                ", contractTemplateId='" + contractTemplateId + '\'' +
                '}';
    }
1
ответ дан RCR 25 August 2018 в 02:23
поделиться

мы можем даже писать так, создавая новый объект String в классе и назначая ему то, что когда-либо хотим в конструкторе, и возвращаем его в метод toString, который переопределен

public class Student{  
 int id;  
 String name;  
 String address;  
 String details;
 Student(int id, String name, String address){  
 this.id=id;  
 this.name=name;  
 this.address=address;  
 this.details=id+"  "+name+"  "+address;  
 }  

//overriding the toString() method  
public String toString(){ 
  return details;  
 }  
 public static void main(String args[]){  
   Student s1=new Student(100,"Joe","success");  
   Student s2=new Student(50,"Jeff","fail");  

   System.out.println(s1);//compiler writes here s1.toString()  
   System.out.println(s2);//compiler writes here s2.toString()  
 }  
}
1
ответ дан user7321815 25 August 2018 в 02:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: