我有一个只接受字符串的方法。
public void setVerticalAlignment(String align) {
...
gd.verticalAlignment = align; // accepts only int.
...
}
但是gd.verticalAlignment
只接受int。
通常这是由类似 gd.verticalAlignment = SWT.TOP 之类的东西设置的,其中 SWT.TOP 是静态 int。
是否可以使用 setVerticalAlignment("SWT.TOP")
之类的方法调用此方法?
最佳答案
如果您使用 Java 7,您始终可以在字符串上使用 switch
:
switch (align) {
case "SWT.TOP":
gd.verticalAlignment = SWT.TOP;
/* etc */
}
说实话,我会避免使用像 "STW.TOP"
这样的字符串。如果我确实必须以 int
之外的其他方式存储对齐状态,我会使用枚举,这可能会在旧版本 Java 的 switch
中使用。
关于Java - 如何将 String 设置为 static int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12069026/