萝卜头IT论坛

搜索
查看: 1488|回复: 11
收起左侧

CPU Test Java版(我的第一个Java小程序!)

[复制链接]
发表于 2023-7-27 15:52:18 | 显示全部楼层 |阅读模式
本帖最后由 爱电脑的昕宇 于 2023-7-28 15:25 编辑

前不久,@ATP 开发出C语言版的CPUtest工具【改编:CPU测速工具V2.0
受此启发,我打算用Java复刻这个程序。
python原版:暑假收官之作:CPU测速工具V2.0


在编写的过程中,我发现Java的加运算速度极快,进行一亿次运算的用时小于1ms,导致分数计算错误(/ by zero),而进行二十亿次也是转眼就完成,再大就不行了(int的最大值是 2147483647)。最后我决定为跑分过程加入进度条等元素。


在配置如下的电脑上,Java版和python版的CPU占用均在30%左右。
image.png


程序截图:
image.png


EXE下载见文末。运行需要JDK。


源码:
import java.util.Scanner;

public class Main {
    public static void mod_2() {
        System.out.println("请稍后...");
        int s = 0;
        System.out.print("[");
        long startTime = System.currentTimeMillis();
        while (s <= 2000000000){
            s+=1;
            if (s%100000000==0){
                System.out.print("\b".repeat(22)+"["+"=".repeat(s/100000000)+" ".repeat(20-s/100000000)+"]");
            }
        }

        long endTime = System.currentTimeMillis();
        System.out.println("\n成绩:"+(s/(endTime-startTime)));
    }
    public static void main(String[] args) {
        System.out.println("CPU Test Java version 2.1 By 爱电脑的昕宇\n" + "-".repeat(10));
        LabelA:
        while (true){
            System.out.println("请选择模式:【1】测试 【2】关于 【3】退出");
            Scanner chooseMod = new Scanner(System.in);
            String mod = chooseMod.next();

            switch (mod){
                case "1":
                    mod_2();
                    break;
                case "2":
                    System.out.println("这是一个简易CPU性能测试工具,也是我的第一个用Java编写的小程序。\n获取python版:https://social.luobotou.org/thread-52933-1-1.html\n@ATP编写的C版:https://social.luobotou.org/thread-55087-1-1.html\n注意:由于编程语言的差异,以上3个版本的成绩之间没有可比性!\n");
                    break;
                case "3":
                    break LabelA;
                default:
                    System.out.println("命令无效。");
            }
        }
    }
}

CT.exe

492 KB, 下载次数: 71

CPUtest.jar

1.97 KB, 下载次数: 69

回复

使用道具 举报

 楼主| 发表于 2023-7-27 16:26:47 | 显示全部楼层
无需JDK、JRE下载(大小感人)
https://pan.huang1111.cn/s/njXMum
回复

使用道具 举报

发表于 2023-7-27 16:16:22 | 显示全部楼层
等等,java打包成exe而不是jar还行
回复

使用道具 举报

 楼主| 发表于 2023-7-27 16:25:31 | 显示全部楼层
AkiPolaris 发表于 2023-7-27 16:16
等等,java打包成exe而不是jar还行

我打成jar之后双击运行不了
回复

使用道具 举报

发表于 2023-7-27 16:33:13 来自手机 | 显示全部楼层
完了,我已经看不懂Java语言了
回复

使用道具 举报

发表于 2023-7-27 16:33:24 | 显示全部楼层
本帖最后由 AkiPolaris 于 2023-7-27 16:37 编辑
爱电脑的昕宇 发表于 2023-7-27 16:25
我打成jar之后双击运行不了

jar包通常要用命令行运行来着……
图片.png
我先在这摆一个我自己打包的版本

Main.jar (1.87 KB, 下载次数: 63)

附上打包流程(
图片.png

回复

使用道具 举报

发表于 2023-7-27 17:11:01 | 显示全部楼层
你这产出挺多啊
回复

使用道具 举报

发表于 2023-7-28 13:10:22 | 显示全部楼层
小朋友的作品都要支持一下。
回复

使用道具 举报

联系我们(Contact)|手机版|萝卜头IT论坛 ( 苏ICP备15050961号-1 )

GMT+8, 2024-4-28 04:44 , Processed in 0.108521 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表