2012-02-26 39 views
0

我想这是什么地方写的,但也许我使用了错误的关键字...Ruby - 如何清除变量内容?

我只是想按下一个按钮(通过鞋)之后,以清除变量的内容:

Shoes.app do 

    @text = edit_line 


    button "ok" do 
     @text = @text.text 
     para @text 
     @text.clear 

     if @text.nil? #to check if variable is empty 
      para "empty" 
     else 
      para "not empty" 
     end 
    end 


end 

为任何有问题的人都不知道这个程序有什么好处:这只是一个测试,以了解如何清除变量的内容。因为我想制作一个类似于回文测试器的东西,以及清除变量内部的部分。因为如果我在按钮的末尾说鞋子 - 进度

.... 
@text = "" # instead of @text.clear 

整个程序不再工作了......任何想法?

回答

0

只是检查,如果字符串为空:@text.empty?

+0

伟大的,它现在的工作!那么什么是.nil?对吗? – Kirinriki 2012-02-26 13:53:11

+0

它检查该变量的值是零。而零字面上毫无代表。这是因为内部变量只包含一个指针(基准),以保持数据的对象(在你的例子的串)的字符串本身可以是空的(其的String.Empty吗?测试),但一个零值意味着是一无所有的引用(所以不再是一个字符串) – robustus 2012-02-26 14:31:36