C头文件
2015-10-26 22:32
369 查看
心法领悟051:编译器可以自动计算数组长度。
例如:int[] array = {1,2,3,4,5}
例如:int[] array = {1,2,3,4,5}
import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import java.awt.GridBagLayout; import javax.swing.JScrollPane; import java.awt.GridBagConstraints; import javax.swing.JButton; import java.awt.Insets; import javax.swing.JTextArea; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.util.Random; public class BubbleSort extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { BubbleSort frame = new BubbleSort(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public BubbleSort() { setTitle("\u5192\u6CE1\u6392\u5E8F\u7B97\u6CD5"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); GridBagLayout gbl_contentPane = new GridBagLayout(); gbl_contentPane.columnWidths = new int[] { 0, 0 }; gbl_contentPane.rowHeights = new int[] { 0, 0, 0, 0, 0 }; gbl_contentPane.columnWeights = new double[] { 1.0, Double.MIN_VALUE }; gbl_contentPane.rowWeights = new double[] { 1.0, 0.0, 1.0, 0.0, Double.MIN_VALUE }; contentPane.setLayout(gbl_contentPane); JScrollPane scrollPane = new JScrollPane(); GridBagConstraints gbc_scrollPane = new GridBagConstraints(); gbc_scrollPane.insets = new Insets(0, 0, 5, 0); gbc_scrollPane.fill = GridBagConstraints.BOTH; gbc_scrollPane.gridx = 0; gbc_scrollPane.gridy = 0; contentPane.add(scrollPane, gbc_scrollPane); textArea1 = new JTextArea(); scrollPane.setViewportView(textArea1); JButton button = new JButton("\u751F\u6210\u968F\u673A\u6570"); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { do_button_actionPerformed(e); } }); GridBagConstraints gbc_button = new GridBagConstraints(); gbc_button.insets = new Insets(0, 0, 5, 0); gbc_button.gridx = 0; gbc_button.gridy = 1; contentPane.add(button, gbc_button); JScrollPane scrollPane_1 = new JScrollPane(); GridBagConstraints gbc_scrollPane_1 = new GridBagConstraints(); gbc_scrollPane_1.insets = new Insets(0, 0, 5, 0); gbc_scrollPane_1.fill = GridBagConstraints.BOTH; gbc_scrollPane_1.gridx = 0; gbc_scrollPane_1.gridy = 2; contentPane.add(scrollPane_1, gbc_scrollPane_1); textArea2 = new JTextArea(); scrollPane_1.setViewportView(textArea2); JButton button_1 = new JButton("\u5192\u6CE1\u6392\u5E8F\u6CD5"); button_1.setActionCommand("\u5192\u6CE1\u6392\u5E8F\u6CD5"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { do_button_1_actionPerformed(e); } }); GridBagConstraints gbc_button_1 = new GridBagConstraints(); gbc_button_1.gridx = 0; gbc_button_1.gridy = 3; contentPane.add(button_1, gbc_button_1); } private int[] array = new int[10]; private JTextArea textArea1; private JTextArea textArea2; protected void do_button_actionPerformed(ActionEvent e) { Random random = new Random();// 创建随机数对象 textArea1.setText("");// 清空文本域 for (int i = 0; i < array.length; i++) {// 初始化数组元素 array[i] = random.nextInt(50);// 生成50以内的随机数 textArea1.append(array[i] + " ");// 把数组元素显示的文本域控件中 } } protected void do_button_1_actionPerformed(ActionEvent e) { textArea2.setText("");// 清空文本域 for (int i = 1; i < array.length; i++) { // 比较相邻两个元素,较大的数往后冒泡 for (int j = 0; j < array.length - i; j++) { if (array[j] > array[j + 1]) { int temp = array[j];// 把第一个元素值保持到临时变量中 array[j] = array[j + 1];// 把第二个元素值保存到第一个元素单元中 array[j + 1] = temp;// 把临时变量也就是第一个元素原值保持到第二个元素中 } textArea2.append(array[j] + " ");// 把排序后的数组元素显示到文本域中 } textArea2.append("【"); for (int j = array.length - i; j < array.length; j++) { textArea2.append(array[j] + " ");// 把排序后的数组元素显示到文本域中 } textArea2.append("】\n"); } } }
相关文章推荐
- 准确理解javascript中的this的指向
- 如何设置eclipse下查看java源码
- 高项2015年下半年培训随堂作业(10月日)
- vlsm的划分
- Alpha-Blending 技术简介
- 将表达式转换为逆波兰表达式
- 微信聊天记录数据存储机制
- CentOS6.5系统挂载NTFS分区的硬盘
- 2015年10月26日作业
- Android SurfaceFlinger and its' client
- PeekMessage和GetMessage
- 变更管理、安全管理和风险管理作业
- h264 NAL头解析
- 向量与因子操作
- C++:纯虚函数与抽象类
- Map集合框架的使用
- 模块项目目标
- 信息安全系统基础第七周学习总结
- 负数的二进制表示及有符号数与无符号数之间的转换
- GCD