2012-02-06 22 views
74

Groovyは文字列にisAllWhitespace()メソッドを追加しました。これは素晴らしいですが、のようには見えません。以外に何かがある場合、の空白があるかどうかを調べる方法です。StringがGroovyの空白だけでなくnullでないかどうかを調べるにはどうしたらいいですか?

myString && !myString.allWhitespace 

しかし、それはあまりにも冗長ようだ:

私が思い付くことができました最高です。これは、確認のためのこのような共通のようですこれを確認する簡単な方法である必要があります。

+0

は(MYSTRING場合 'です?.trim()) '十分ですか? –

答えて

144

別のオプションは、あなたはそれがよりセマンティックにするためにStringにメソッドを追加することができ

if (myString?.trim()) { 
    ... 
} 
+0

myString?.trim()は、ブール値を返す質問の代わりに文字列(またはnullまたは空白)を返します。 出力をどのように使用しているかによって、 'if'というのはうまくいくと思います。 – Steven

+5

または 'boolean containsData = myString?.trim()' –

+1

ああ、すごいですよ、グルーヴィーは魅力的になってきました! – Steven

7

です:

あなたがしてみましょう
String.metaClass.getNotBlank = { !delegate.allWhitespace } 

groovy:000> foo = '' 
===> 
groovy:000> foo.notBlank 
===> false 
groovy:000> foo = 'foo' 
===> foo 
groovy:000> foo.notBlank 
===> true 
+1

どこにmetaClassの変更を置くのが最適でしょうか? – cdeszaq

関連する問題