簡體   English   中英

如何在 Dart 中連接兩個字符串?

[英]How to concatenate two string in Dart?

我是 Dart 編程語言的新手,任何人都可以幫助我找到 Dart 中可用的最佳字符串連接方法。

我只發現加號 (+) 運算符可以像其他編程語言一樣連接字符串。

有 3 種方式連接字符串

String a = 'a';
String b = 'b';

var c1 = a + b; // + operator
var c2 = '$a$b'; // string interpolation
var c3 = 'a' 'b'; // string literals separated only by whitespace are concatenated automatically
var c4 = 'abcdefgh abcdefgh abcdefgh abcdefgh' 
         'abcdefgh abcdefgh abcdefgh abcdefgh';

通常字符串插值優於+運算符。

還有StringBuffer用於更復雜和高性能的字符串構建。

如果你需要循環連接,我有這個:

var list = ['satu','dua','tiga'];
var kontan = StringBuffer();
list.forEach((item){
    kontan.writeln(item);
});
konten = kontan.toString();

假設你有一個 Person 類。

class Person {
   String name;
   int age;

   Person({String name, int age}) {
    this.name = name;
    this.age = age;
  }
}

你想打印人的描述。

var person = Person(name: 'Yogendra', age: 29);

在這里你可以像這樣連接字符串

 var personInfoString = '${person.name} is ${person.age} years old.';
 print(personInfoString);

最簡單的方法

String get fullname {
   var list = [firstName, lastName];
   list.removeWhere((v) => v == null);
   return list.join(" ");
}

Günter 的回答涵蓋了在 Dart 中如何連接兩個字符串的大多數情況。

如果你有一個可迭代的字符串,那么使用writeAll會更容易,因為這讓你可以選擇指定一個可選的分隔符

final list = <String>['first','second','third'];
final sb = StringBuffer();
sb.writeAll(list, ', ');
print(sb.toString());

這將返回

'第一第二第三'

假設我們有兩個字符串

字符串 a = '你好';
字符串 b = '世界';
字符串輸出;

現在我們想連接這兩個字符串

輸出=a+b;
打印(輸出);

Hello World

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM