找到 343 篇文章 关于 Java 编程
676 次浏览
以下示例演示了如何使用 String 类的 matches 方法检查日期是否为正确的格式。示例在线演示public class Main { public static void main(String[] argv) { boolean isDate = false; String date1 = "8-05-1988"; String date2 = "08/04/1987"; String datePattern = "\d{1, 2}-\d{1, 2}-\d{4}"; isDate = date1.matches(datePattern); System.out.println("日期:"+ date1+": 与此日期模式匹配:"+datePattern+"答案:"+isDate); isDate = date2.matches(datePattern); System.out.println("日期:"+ date2+": 与此日期匹配... 阅读更多
6K+ 次浏览
使用 printf 方法可以非常轻松地完成日期和时间格式化。您可以使用一个由两个字母组成的格式,以 t 开头,以表格中所示的字母之一结尾,如下面的代码所示。示例在线演示import java.util.Date; public class DateDemo { public static void main(String args[]) { // 实例化一个 Date 对象 Date date = new Date(); // 显示时间和日期 String str = String.format("当前日期/时间: %tc", date ); System.out.printf(str); } }这将产生以下结果... 阅读更多
277 次浏览
SimpleDateFormat 类具有 parse() 方法,该方法尝试根据给定 SimpleDateFormat 对象中存储的格式解析字符串。示例在线演示import java.util.*; import java.text.*; public class DateDemo { public static void main(String args[]) { SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd"); String input = args.length == 0 ? "1818-11-11" : args[0]; System.out.print(input + " 解析为 "); Date t; try { t = ft.parse(input); System.out.println(t); } catch (ParseException e) { System.out.println("使用 " + ft + " 不可解析"); } } }上述程序的示例运行将产生以下结果:输出1818-11-11 解析为 Wed Nov 11 00:00:00 EST 1818
2K+ 次浏览
死锁描述了一种情况,其中两个或多个线程被永远阻塞,互相等待。当多个线程需要相同的锁但以不同的顺序获取它们时,就会发生死锁。Java 多线程程序可能会遇到死锁情况,因为synchronized关键字会导致正在执行的线程在等待与指定对象关联的锁或监视器时阻塞。这是一个示例。示例在线演示public class TestThread { public static Object Lock1 = new Object(); public static Object Lock2 = new Object(); public static void main(String args[]) { ThreadDemo1 T1 = ... 阅读更多
2K+ 次浏览
使用 JDK 7,我们可以非常轻松地使用 swing 创建基于渐变的半透明窗口。以下是创建基于渐变的半透明窗口所需的步骤:首先使 JFrame 的背景透明。frame.setBackground(new Color(0, 0, 0, 0));创建渐变绘制,并填充面板。JPanel panel = new javax.swing.JPanel() { protected void paintComponent(Graphics g) { Paint p = new GradientPaint(0.0f, 0.0f, new Color(R, G, B, 0), getWidth(), getHeight(), new Color(R, G, B, 255), true); Graphics2D g2d = (Graphics2D)g; g2d.setPaint(p); g2d.fillRect(0, 0, getWidth(), getHeight()); } }分配... 阅读更多
185 次浏览
GregorianCalendar 是 Calendar 类的具体实现,它实现了您熟悉的普通公历。在本教程中,我们没有讨论 Calendar 类,您可以查阅标准 Java 文档以了解此类。Calendar 的getInstance( )方法返回一个 GregorianCalendar,它使用默认区域设置和时区中的当前日期和时间进行初始化。GregorianCalendar 定义了两个字段:AD 和 BC。它们表示公历定义的两个纪元。GregorianCalendar 对象还有几个构造函数:序号构造函数和描述1GregorianCalendar()使用默认时区中的当前时间构造一个默认的 GregorianCalendar... 阅读更多
809 次浏览
使用 JDK 7,我们可以非常轻松地使用 swing 创建形状窗口。以下是创建形状窗口所需的步骤:向 frame 添加一个组件监听器,并覆盖 componentResized() 以更改 frame 的形状。每当窗口大小发生更改时,此方法都会正确重新计算 frame 的形状。frame.addComponentListener(new ComponentAdapter() { @Override public void componentResized(ComponentEvent e) { frame.setShape(new RoundRectangle2D.Double(0, 0, frame.getWidth(), frame.getHeight(), 20, 20)); } });示例请参阅下面形状窗口的示例。import java.awt.Color; import java.awt.GridBagLayout; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; import java.awt.geom.Ellipse2D; import java.awt.geom.RoundRectangle2D; import ... 阅读更多
21K+ 次浏览
Swing API 是一组可扩展的 GUI 组件,可以简化开发人员创建基于 JAVA 的前端/GUI 应用程序的工作。它构建在 AWT API 之上,并且充当 AWT API 的替代品,因为它几乎每个控件都对应于 AWT 控件。以下示例展示了一个简单的计算器应用程序。import java.awt.BorderLayout; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; public class Calculator implements ActionListener { private static JTextField inputBox; Calculator(){} public static void main(String[] args) { createWindow(); } ... 阅读更多
748 次浏览
您可以让程序休眠任意时间段,从 1 毫秒到计算机的整个生命周期。例如,以下程序将休眠 3 秒 -示例 在线演示import java.util.*; public class SleepDemo { public static void main(String args[]) { try { System.out.println(new Date( ) + ""); Thread.sleep(5*60*10); System.out.println(new Date( ) + ""); } catch (Exception e) { System.out.println("Got an exception!"); } } }这将产生以下结果 -输出Sun May 03 18:04:41 GMT 2009 Sun May 03 18:04:51 GMT 2009
1K+ 次浏览
Toast 消息是一种会自动消失的警报。使用 JDK 7,我们可以非常轻松地创建类似于 Android 上警报的 Toast 消息。以下是创建 Toast 消息所需的步骤。创建一个圆角矩形形状的框架。向框架添加一个组件监听器,并覆盖 componentResized() 以更改框架的形状。此方法在窗口大小更改时会正确地重新计算框架的形状。frame.addComponentListener(new ComponentAdapter() { @Override public void componentResized(ComponentEvent e) { frame.setShape(new RoundRectangle2D.Double(0, 0, frame.getWidth(), frame.getHeight(), 20, 20)); } ... 阅读更多