java编程常见类型题 --- 程序逻辑(最小台阶)、多线程(计算读取)、Swing布局(国际棋盘)
发布日期:2021-05-07 02:47:55 浏览次数:19 分类:精选文章

本文共 3429 字,大约阅读时间需要 11 分钟。

java编程常见类型题


程序逻辑(最小台阶)

在这里插入图片描述

使用数组

import java.util.Arrays;public class Exam3_3 {       public static void main(String[] args) {           int[] a = new int[10];        int count = 0;        for (int i = 0;i>=0;i++) {               if (i % 2 == 1 && i % 7 == 0 && i % 5 == 4 && i % 6 == 5 && i % 3 == 2) {                   a[count] = i;                if (count==9){                       break;                }                count++;            }        }        Arrays.sort(a);        System.out.println("台阶数最小为:" + a[0]);    }}

使用集合

import java.util.Iterator;import java.util.Set;import java.util.TreeSet;public class Exam3 {       public static void main(String[] args) {           Set set = new TreeSet();        for (int i = 0; i >= 0; i++) {               if (i % 2 == 1 && i % 3 == 2 && i % 5 == 4 && i % 6 == 5 && i % 7 == 0) {                   set.add(i);                if (set.size() > 10) {                       break;                }            }        }        Iterator it = set.iterator();        while (it.hasNext()) {               Object o = it.next();            System.out.println("这个台阶最小有:" + o + "级台阶。");            break;        }    }}

多线程(计算读取)

在这里插入图片描述

class resul {       static int[] sum = new int[19];}class add implements Runnable {       int a;    @Override    public void run() {           for (int i = 0; i < 19; i++) {               a += (i + 1) * (i + 2);            resul.sum[i] += a;            System.out.println("a线程累加结果为" + resul.sum[i]);            try {                   Thread.sleep(100);            } catch (InterruptedException e) {                   e.printStackTrace();            }        }    }}class out implements Runnable {       @Override    public void run() {           for (int i = 0; i < 19; i++) {               System.out.println("b线程读取a线程的结果为" + resul.sum[i]);            try {                   Thread.sleep(100);            } catch (InterruptedException e) {                   e.printStackTrace();            }        }    }}public class Exam1_1 {       public static void main(String[] args) {           new Thread(new add(), "a").start();        new Thread(new out(), "b").start();    }}

在这里插入图片描述


Swing布局(国际棋盘)

在这里插入图片描述

import javax.swing.*;import java.awt.*;public class Exam2_2 {       public Exam2_2() {           // 创建并配置顶层容器        JFrame frame = new JFrame("国际棋盘");        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        frame.setLocation(500, 500);        frame.setSize(415, 440);        frame.setVisible(true);        // 设置jlabel组件大小        int width = 50;        int height = 50;        // 遍历创建jlabel组件        for (int i=0;i<8;i++){               for (int j=0;j<8;j++){                   JLabel jLabel = new JLabel();                jLabel.setSize(width,height);                jLabel.setLocation(height*i,width*j);                // 填充颜色                if ((i+j)%2==0){                       jLabel.setBackground(Color.black);                }else {                       jLabel.setBackground(Color.white);                }                // 设置组件不透明  注意次数不能设置反了,该方法本身就表示不透明                jLabel.setOpaque(true);                jLabel.setBorder(BorderFactory.createLineBorder(Color.black));                frame.add(jLabel);            }        }    }    public static void main(String[] args) {           SwingUtilities.invokeLater(new Runnable() {               @Override            public void run() {                   new Exam2_2();            }        });    }}

在这里插入图片描述


上一篇:java编程常见类型题 --- IO文件操作、程序逻辑(百钱百鸡)、 集合应用
下一篇:java编程常见类型题 --- 面向对象编程、程序逻辑(金字塔)、多线程同步

发表评论

最新留言

不错!
[***.144.177.141]2025年04月16日 15时44分30秒