Dart에서 개체 속성 인쇄 [중복]

Dec 10 2020

간단한 Dart 파일이 있습니다.

class Person {
  String name;
  int age;
}

void main() {
  var person1 = Person();
  person1.name = 'Rajesh';
  person1.age = 20;
  print("person name $person1.name ");
  print(person1.name);
}

나는 단지 인쇄 print("person name $person1.name ");하고 싶다 person name Rajesh. 그리고 나는 . 하지만 출력을 person name Instance of 'Person'.name.

도움이 필요합니다. 저는 Dart를 처음 사용합니다. `

답변

2 BeHappy Dec 10 2020 at 22:24

이것을 사용해야합니다 :

print("person name ${person1.name} ");

또는 toString클래스에서 재정의 할 수 있습니다 .

  @override
  String toString() {
    return '''
            person name $name
        ''';
  }

그때:

print(person1);
1 StefanoA. Dec 10 2020 at 22:28

당신은 아마 :

print("person name: ${person1.name} ");

toString()클래스에서 메소드를 지정할 수 있습니다 .

class Person {
  String name;
  int age;
  String toString() => "${name} is ${age} years old"; 
}

다음과 같이 사용하십시오.

class Person {
  String name;
  int age;
  String toString() => "${this.name} is ${this.age} years old"; 
}

void main() {
Person person = new Person();
person.name = "John";
person.age = 25;
print(person); // John is 25 years old
}
Agkab Dec 10 2020 at 22:50

여기에서 오류는 보간 문자열에 있습니다. 일반적으로 두 개 이상의 객체를 사용하는 ${}경우 $. 대신 전체 형식의 문자열 보간을 사용해야합니다 .

코드의 경우 대신 다음을 수행하십시오.

print('person name : ${person1.name}');

도움이 되셨기를 바랍니다.