Tag: java

围绕字符旋转图像(JAVA)

是的,我知道你可以使用AffineTransformation,但是我希望我的剑形图像能够360度旋转,而不是一次旋转。 基本上我想要一个类似于Terraria的轮换系统。 我知道如何获得字符的x和y,所以问题是:我如何使它围绕我定义的点旋转? 我的代码是这样设置的 f.addMouseListener(new MouseAdapter(){ public void mouseClicked(MouseEvent e){ swordSwinging=true; } }); … if(swordSwinging){ //swinging code goes here } repaint();

用可滚动Jtable打印一个JPanel在上面

我只想打印一个JPanel ,它上面有一个可滚动的JTable 。 我已经使用JTable来定位JPanel 。 但是我只能打印可见区域。 可滚动的JTable区域中的内容不被打印。

Java:平滑的颜色转换

我正在试着做一个health bar ,就像原来的health bar ,它会开始变绿,在失去健康之后,你会发现它会变成黄色,然后变成橙色,然后变成红色……或者与之相关的东西。 我尝试使用此链接提供的方法: https : //stackoverflow.com/questions/19841477/java-smooth-color-transition 这个链接的结果是这个代码,只是一个从100到0的testing,但是它通常以Red和Green结束于IllegalArgumentException ,而我的理由是它的值超过了255。 Color to = Color.red; Color base = Color.green; int red = (int)Math.abs((100 * to.getRed()) + ((1 – 100) * base.getRed())); int green = (int)Math.abs((100 * to.getGreen()) + ((1 – 100) * base.getGreen())); int blue = (int)Math.abs((100 * to.getBlue()) + ((1 – 100) * base.getBlue())); […]

应该在“大写”中声明“静态最终logging器”吗?

在Java中,静态最终variables是常量,惯例是它们应该是大写的。 但是,我看到大多数人都以小写字母的forms声明了违规发生在PMD中的logging器 。 例如: private static final Logger logger = Logger.getLogger(MyClass.class); 只要search谷歌或SO “静态最终logging器”,你会看到这一点。 我们应该使用LOGGER吗?

何时使用断言以及何时使用exception

大多数情况下,我将使用一个exception检查代码中的条件,我想知道什么时候使用断言是合适的。 例如, Group group=null; try{ group = service().getGroup("abc"); }catch(Exception e){ //I dont log error because I know whenever error occur mean group not found } if(group !=null) { //do something } 你能指出一个断言是如何适应的吗? 我应该使用断言吗? 看起来我从来没有在生产代码中使用断言,只能在unit testing中看到断言。 我知道在大多数情况下,我可以只使用exception来进行上面的检查,但我想知道适当的方式来“专业”。

什么是Java中的互斥和信号量? 主要区别是什么?

什么是Java中的互斥和信号量? 主要区别是什么?

方便地在enum和int / String之间映射

当处理只能采用有限数量值的variables/参数时,我试着总是使用Java的enum ,如 public enum BonusType { MONTHLY, YEARLY, ONE_OFF } 只要我留在我的代码,这工作正常。 但是,我经常需要与其他代码使用纯int (或String )值为同一目的,或者我需要读/写/到数据库的数据存储为数字或string。 在这种情况下,我想有一个方便的方法将每个枚举值与一个整数,这样我可以转换两种方式(换句话说,我需要一个“可逆的枚举”)。 从枚举到int很容易: public enum BonusType { public final int id; BonusType(int id) { this.id = id; } MONTHLY(1), YEARLY(2), ONE_OFF(3); } 然后我可以访问int值为BonusType x = MONTHLY; int id = x.id; BonusType x = MONTHLY; int id = x.id; 。 但是,我不能看到相反的方法,即从int到enum。 理想情况下,像 BonusType […]

在HttpServletRequest中getRequestURI和getPathInfo方法有什么区别?

我正在做一个简单,非常轻量级的前端控制器。 我需要匹配请求path到不同的处理程序(动作),以便select正确的。 在我的本地机器HttpServletRequest.getPathInfo()和HttpServletRequest.getRequestURI()返回相同的结果。 但我不确定在生产环境中他们会返回什么。 那么,这些方法和我应该select什么有什么区别呢?

Spring MVCtypes转换:PropertyEditor或Converter?

我正在寻找在MVC中绑定和转换数据的最简单最简单的方法。 如果可能的话,不做任何XMLconfiguration。 到目前为止,我一直在使用PropertyEditor : public class CategoryEditor extends PropertyEditorSupport { // Converts a String to a Category (when submitting form) @Override public void setAsText(String text) { Category c = new Category(text); this.setValue(c); } // Converts a Category to a String (when displaying form) @Override public String getAsText() { Category c = (Category) this.getValue(); return c.getName(); […]

在数据库中保存枚举的方法

我想知道将枚举保存到数据库中的最佳方法是什么。 我知道有name()和valueOf()方法,使其成为一个string回来。 但有没有其他(灵活的)选项来存储这些值? 有一个聪明的方法,使他们成为唯一的数字( ordinal()是不安全的使用)? 任何意见和build议将是有益的:) 更新: 感谢所有真棒和快速的答案! 正如我怀疑的那样。 但是要注意“工具包”; 这是一个方法。 问题是,我将不得不添加相同的方法与我创build的每个枚举types。 这是很多重复的代码,目前,Java不支持任何解决scheme(你不能让枚举扩展其他类)。 但是,谢谢你的所有答案!