2014-10-28 77 views

回答

9

兩個&strString呼籲is_empty的方法:

這是如何使用它們:

assert_eq!("".is_empty(), true); 
assert_eq!("".to_string().is_empty(), true); 
+0

「」.to_string()版本是不必要的字符串分配。 – pyrho 2014-10-28 10:43:08

+7

@pyrho我相信這樣做的目的是要顯示'&str'和'String'都有'is_empty()'方法。 – Manishearth 2014-10-28 10:44:20

+1

我猜對了,我只是指出這是不好的做法(: – pyrho 2014-10-28 11:35:46

1

找到在doc:

impl Collection for String 
    fn len(&self) -> uint 
    fn is_empty(&self) -> bool 
+0

LEN()返回單元? – 2014-10-28 10:04:49

+0

@AlexanderSupertramp還有什麼? – 2014-10-28 10:05:18

+0

還有什麼呢? – 2014-10-28 10:06:47

4

其他人迴應稱Collection.is_empty可以用來知道,如果一個字符串是空的,但假設「爲空」你的意思是「只有空格組成」那麼你要UnicodeStrSlice.is_whitespace() ,對於空字符串和僅由White_Space unicode屬性集構成的字符組成的字符串都是如此。

只有字符串切片實現UnicodeStrSlice,因此如果從String開始,則必須使用.as_slice()

TL; DR:s.is_whitespace()如果s: &strs.as_slice().is_whitespace()如果s: String

+0

這似乎是一個不穩定的外部箱子,有沒有其他解決方法? – PENGUINLIONG 2017-08-06 16:08:47

相關問題