`

实例055 - 反转数组中元素顺序

 
阅读更多

实现思路:把数组最后一个元素与第一个元素互换,倒数第二个元素与第二个元素互换,依此类推,直到把所有数组元素反转替换。

import java.awt.EventQueue;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.border.EmptyBorder;
import javax.swing.UIManager;
import javax.swing.JTextField;
import javax.swing.JLabel;

public class ReverseSort extends JFrame {
    
    private JPanel contentPane;
    
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        try {
            UIManager
                    .setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
        } catch (Throwable e) {
            e.printStackTrace();
        }
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    ReverseSort frame = new ReverseSort();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    
    /**
     * Create the frame.
     */
    public ReverseSort() {
        setTitle("\u53CD\u8F6C\u6570\u7EC4\u4E2D\u5143\u7D20\u7684\u987A\u5E8F");
        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, 0 };
        gbl_contentPane.columnWeights = new double[] { 1.0, Double.MIN_VALUE };
        gbl_contentPane.rowWeights = new double[] { 0.0, 0.0, 0.0, 1.0, 0.0,
                Double.MIN_VALUE };
        contentPane.setLayout(gbl_contentPane);
        
        label = new JLabel(
                "\u8F93\u5165\u6570\u7EC4\u5185\u5BB9\uFF0C\u4EE5\u7A7A\u683C\u5206\u9694\u6570\u7EC4\u5143\u7D20");
        GridBagConstraints gbc_label = new GridBagConstraints();
        gbc_label.anchor = GridBagConstraints.WEST;
        gbc_label.insets = new Insets(0, 0, 5, 0);
        gbc_label.gridx = 0;
        gbc_label.gridy = 0;
        contentPane.add(label, gbc_label);
        
        textField = new JTextField();
        GridBagConstraints gbc_textField = new GridBagConstraints();
        gbc_textField.fill = GridBagConstraints.HORIZONTAL;
        gbc_textField.insets = new Insets(0, 0, 5, 0);
        gbc_textField.gridx = 0;
        gbc_textField.gridy = 1;
        contentPane.add(textField, gbc_textField);
        
        label_1 = new JLabel("\u6570\u7EC4\u5143\u7D20\u53CD\u8F6C\uFF1A");
        GridBagConstraints gbc_label_1 = new GridBagConstraints();
        gbc_label_1.anchor = GridBagConstraints.WEST;
        gbc_label_1.insets = new Insets(0, 0, 5, 0);
        gbc_label_1.gridx = 0;
        gbc_label_1.gridy = 2;
        contentPane.add(label_1, gbc_label_1);
        
        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 = 3;
        contentPane.add(scrollPane_1, gbc_scrollPane_1);
        
        textArea = new JTextArea();
        scrollPane_1.setViewportView(textArea);
        
        JButton button_1 = new JButton("\u53CD\u8F6C\u6392\u5E8F\u6CD5");
        button_1.setActionCommand("\u5FEB\u901F\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 = 4;
        contentPane.add(button_1, gbc_button_1);
    }
    
    private JTextField textField;
    private JTextArea textArea;
    private JLabel label;
    private JLabel label_1;
    
    protected void do_button_1_actionPerformed(ActionEvent e) {
        String inText = textField.getText();// 获取用户输入
        String[] array = inText.split(" {1,}");
        int len = array.length;
        textArea.setText("");
        for (int i = 0; i < len / 2; i++) {
            String temp = array[i];
            array[i] = array[len - 1 - i];
            array[len - 1 - i] = temp;
            for (String string : array) {
                textArea.append(string + "  ");
            }
            textArea.append("\n");
        }
    }
    
}

 

 

  • 大小: 9.6 KB
分享到:
评论

相关推荐

    PHP经典实例--数组

    4. 数组反转:使用array_reverse()函数可以反转数组的顺序: ```php $reversedArray = array_reverse($array); ``` 5. 数组排序:PHP提供了多种排序函数,如: - asort():按值升序排序关联数组并保持键的关联。 ...

    C#程序设计-3期(KC008) KC008110200013_如何反转数组中元素的顺序.docx

    然后,通过`Array.Reverse(myArray)`调用Reverse方法来反转数组元素的顺序。在反转前和反转后,我们都遍历数组并将其元素连接成字符串以显示效果。最后,通过一个消息框展示反转前后的数组顺序。 这个例子清楚地...

    Java 实例 - 数组反转源代码-详细教程.zip

    本详细教程将深入探讨如何在Java中反转数组,通过源代码实例帮助你理解和掌握这一技能。 首先,数组反转的基本思想是交换数组的首尾元素,然后逐步向中间移动,直到整个数组的前后元素位置互换。这可以通过两种主要...

    java实例-数组(学习资料)

    我们还可以看到其他与数组相关的操作,如获取数组长度(通过`array.length`),数组反转,数组输出,获取数组的最大值和最小值,数组合并,数组填充,数组扩容,删除数组元素,数组差集,数组交集,以及在数组中查找...

    C#教学课件:第4章 数组.ppt

    - `Sort()`方法用于对数组进行升序排序,`Reverse()`方法用于反转数组元素顺序。 - 复制数组有多种方法,例如使用`Array.Copy()`或`Buffer.BlockCopy()`函数。 - 动态数组(如ArrayList或List)支持动态添加、...

    Java 实例 - 集合反转源代码-详细教程.zip

    反转操作在多种场景下都很有用,如实现堆栈(LIFO,后进先出)的行为,反转数组,或者在某些算法(如快速排序、归并排序)中改变元素顺序。 8. **注意事项**: - 反转操作不会改变原始集合的引用,而是就地反转...

    js代码-vue 数组变化侦测 1

    7. `array.reverse()`:反转数组中的元素。由于这个操作改变了数组的元素顺序,Vue会捕获这个变化。 8. `array.sort(compareFn)`:对数组进行排序。如果提供了compareFn,排序将是稳定的;如果没有提供,数组将按...

    Javascript数组操作整理.rar

    - `reverse()`:反转数组中的元素顺序。 - `sort()`:对数组的元素进行排序。默认按字母顺序。 7. 查找数组元素: - `indexOf()`:查找指定元素在数组中的位置,返回索引,找不到则返回-1。 - `lastIndexOf()`...

    Java实现数组反转翻转的方法实例

    在Java编程中,数组反转是一种常见的操作,它涉及到将数组中的元素顺序颠倒,使得原数组的第一个元素变为最后一个,最后一个元素变为第一个。在上述文章中,提到了三种不同的方法来实现Java数组的反转翻转。 **方法...

    《物联网C#程序开发案例式教程》教学课件-第五章-数组与集合04 c#经典案例.pptx

    - `Reverse()`:反转集合中元素的顺序。 4. **遍历ArrayList**: - 可以通过索引访问元素,如`for`循环或`Console.WriteLine(s[i])`。 - 使用`foreach`循环遍历集合,如`foreach (string s in scores) {...}`。 ...

    JavaScript数组.pdf

    .sort()方法对数组的元素进行排序,.reverse()方法可以将数组元素顺序反转。 ```javascript colors.sort(); colors.reverse(); ``` 12. 多维数组 JavaScript数组可以是多维的,即数组的元素本身可以是数组。 ```...

    JavaScript学习笔记整理之引用类型

    - `reverse()`反转数组元素顺序 - `sort()`对数组进行排序,但默认按字符串排序。若要按数字排序,需提供比较函数,如: ```javascript var values = [1, 10, 2]; values.sort(function(a, b) { return a - b;...

    全国计算机二级C语言程序设计讲义一维数组和二维数组PPT教案学习.pptx

    - 示例6.2演示了如何反转一个数组的元素顺序,通过交换数组的两端元素实现。 七、二维数组: 二维数组可以视为一维数组的数组,它可以用来模拟矩阵或表格数据。虽然在提供的内容中没有详细讨论二维数组,但在C语言...

    C#数组反转与排序实例分析

    数组反转是将数组中的元素顺序颠倒,例如,原数组[1, 2, 3, 4, 5]反转后变成[5, 4, 3, 2, 1]。在C#中,我们可以使用循环来实现这个功能。示例代码中,我们定义了一个字符串数组`strAllay`,然后通过一个for循环来...

    Java经典编程源码基础例程300.zip

    实例042 反转数组中元素的顺序 63 第6章 面向对象入门 65 实例043 自定义图书类 66 实例044 温度单位转换工具 67 实例045 成员变量的默认初始化值 68 实例046 单例模式的应用 69 实例047 汉诺塔问题求解 70 实例048 ...

    Array-Methods-JS:数组-方法-JS

    7. `reverse()`:反转数组元素的顺序。 三、不改变原数组的方法 1. `slice()`:创建数组的一个浅拷贝,可以选择从开始到结束的子数组。 2. `concat()`:合并两个或更多数组,并返回新数组。 3. `filter()`:根据...

    一些groovy的实例代码--免费下载

    - `reverse()`方法反转列表元素的顺序。 10. **列表元素批处理** - 对列表中的多个元素同时执行相同操作。 以上知识点仅为Groovy语言功能的一小部分,Groovy还提供了更多高级特性,如闭包、元编程、类型推断等,...

    C语言典型实例

    - **实例描述**:将数组中的元素顺序反转。 - **实现过程**: 1. 使用双指针技术,一个指向数组头部,另一个指向尾部。 2. 交换对应位置的元素。 3. 移动指针,直至相遇。 - **代码解析**:使用`swap`函数或临时...

    php array_reverse 以相反的顺序返回数组实例代码

    总结来说,array_reverse是PHP中一个简单且功能强大的函数,能够帮助开发者轻松反转数组元素的顺序。无论是处理一维数组还是多维数组,这个函数都能提供极大的便利。通过本文介绍的实例和代码示例,读者应该能够掌握...

    数据结构作业打印051

    1. 数组反转:在数组中,反转元素的顺序可以通过交换元素来实现。如代码所示,使用迭代器对元素进行操作,可以将数组中的元素反转过来。时间复杂度为 O(n/2),因为该方法中只有一个 for 循环,循环 n/2 次,循环内 ...

Global site tag (gtag.js) - Google Analytics