2012-07-09 34 views
0

可以创建一个类似于jQuery的.css()函数的方法?创建类似于jQuery的.css()函数的方法

例jQuery中:

$("#elemid").css("position","absolute"); 
$("#elemid").css({position:"absolute",left:45}); 

而且我想这看起来几乎是一样的JAVA

实例JAVA

Rectangle rect=new Rectangle(); 
rect.style("position","absolute"); 
rect.style({position:"absolute",left:45}); 
+0

到目前为止没有,但我认为这是可能的与枚举 – boyd 2012-07-09 15:53:21

回答

0

你可以做一些事情上similiar创建一个DSL你拥有。 DSL库的一个例子是JooQ,一个用于SQL的java DSL。

这将需要一些工作,但:P

+1

用Java创建一个类似于DSL的DSL并不值得这样做。另一方面,Ruby ... – LanguagesNamedAfterCofee 2012-07-09 16:06:18

+1

是的,但不幸的是,他想要在Java中执行它:/ – 2012-07-09 16:26:32

0

的jQuery函数的基本想法是,他们返回一个新的(或相同的)对象为你潜在的呼吁另一种方法。它在.NET Framework的System.Linq名称空间中实现的类似方法。虽然那个使用了扩展方法,但这些只是为现有类定义其他方法的一种方法。一个例子:

foreach (var i in list.Skip(4).TakeWhile(x => x > 0).Select(x => x*x)) 
{ 
    Console.WriteLine(i); 
} 

此跳过列表的在剩余元素的前四个元素,那么迭代,直到它或者到达列表或这不是大于零的元件的端部。迭代的每个元素被平方,然后由迭代器返回以写入控制台。

所以,如果您使用Java创建自己的类,只需让方法返回一个对象来调用其他方法即可。 StringBuilder/StringBuffer类已通过简单地返回this与他们的Append方法做到这一点。

+0

以及如何在java.Hoe中使用它,我可以调用该方法吗? – boyd 2012-07-09 18:29:15

相关问题