java如何在不创建新对象的情况下引用双精度值?
我的问题是,我想制作一个通用代码块。getHalfDotTime方法和getHalfTime方法是许多类似方法中的两种
我不想为每个方法创建一个新的ActionListener,而是想在commonFormatting方法中创建ActionListener
当我这样做的时候,我遇到的问题是声明。例如,半点时间双精度变量不能包含为局部双精度变量
我想要双currentTitle=声明。半点时间,然后在ActionListener setText中设置currentTitle。产生的这个问题是,当程序运行时,它将当前标题设置为INIT值0,然后按下按钮时保持为0
private static void gethalfDotTime(JButton tapButton, JPanel contentPane) {
final JLabel currentLabel = new JLabel("0ms");
currentLabel.setBounds(119, 185, 120, 16);
tapButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
currentLabel.setText(Declarations.threeDecimals.format(Declarations.halfDotTime) + "ms");
}
});
commonFormatting(tapButton, contentPane, currentLabel);
}
private static void gethalfTime(JButton tapButton, JPanel contentPane) {
final JLabel currentLabel = new JLabel("0ms");
currentLabel.setBounds(119, 185, 120, 16);
tapButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
currentLabel.setText(Declarations.threeDecimals.format(Declarations.halfTime) + "ms");
}
});
commonFormatting(contentPane, currentLabel);
}
//MANY MORE SIMILAR METHODS ALL CALLING COMMON FORMATTING.
private static void commonFormatting(JPanel contentPane, final JLabel currentLabel) {
currentLabel.setHorizontalAlignment(SwingConstants.RIGHT);
currentLabel.setForeground(new Color(255, 255, 255));
currentLabel.setFont(new Font("Letter Gothic Std", Font.BOLD, 14));
contentPane.add(currentLabel);
共 (0) 个答案