基于Java+Swing实现的代码统计工具

news2025/1/10 16:55:17

基于Java+Swing实现的代码统计工具

  • 一、系统介绍
  • 二、功能展示
  • 三、代码展示
  • 四、其他系统
  • 五、获取源码

一、系统介绍

系统可以统计C,C++,Java代码的空行、注释、有效代码行数

使用说明

直接运行main方法即可

运行环境:idea jdk

二、功能展示

在这里插入图片描述

在这里插入图片描述

三、代码展示

package bean;

/**
 * 统计结果bean
 * @author yang
 */
public class StatisticsResult {

	//语言
	private String language;

	//注释行数
	private int notesCount;

	//空行行数
	private int spacesCount;

	//代码行数
	private int codesCount;

	//文件数量
	private int filesCount;
	
	public StatisticsResult(String language) {
		this.language = language;
	}


	/**
	 * 计算总行数
	 * @return 行数
	 */
	public int getTotal() {
		return this.spacesCount + this.codesCount + this.notesCount;
	}
	
	public void addNotesCount() {
		this.notesCount ++;
	}
	
	public void addSpacesCount() {
		this.spacesCount ++;
	}
	
	public void addCodesCount() {
		this.codesCount ++;
	}
	
	public void addFilesCount() {
		this.filesCount ++;
	}

	public int getNotesCount() {
		return notesCount;
	}

	public int getSpacesCount() {
		return spacesCount;
	}

	public int getCodesCount() {
		return codesCount;
	}

	public int getFilesCount() {
		return filesCount;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((language == null) ? 0 : language.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj == null) {
			return false;
		}
		if (getClass() != obj.getClass()) {
			return false;
		}
		StatisticsResult other = (StatisticsResult) obj;
		if (language == null) {
			return other.language == null;
		} else {
			return language.equals(other.language);
		}
	}
	
}

四、其他系统

Java+Swing实现学生选课管理系统
Java+Swing实现学校教务管理系统
Java+Swing+sqlserver学生成绩管理系统
Java+Swing用户信息管理系统
Java+Swing实现的五子棋游戏
基于JavaSwing 银行管理系统
Java+Swing+mysql仿QQ聊天工具
Java+Swing 聊天室
Java+Swing+dat文件存储实现学生选课管理系统
Java+Swing可视化图像处理软件
Java+Swing学生信息管理系统
Java+Swing图书管理系统
Java+Swing图书管理系统2.0
基于java+swing+mysql图书管理系统3.0
大作业-基于java+swing+mysql北方传统民居信息管理系统

五、获取源码

点击下载
基于Java+Swing实现的代码统计工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/685796.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023全国滋补健康产业创新发展交流会八月相聚上海

简介:2023全国滋补健康产业创新发展交流会,愉极2023年“优秀滋补品牌商”精英班&鲜炖鱼胶师培训考核班 愉极&燕博会 2023年“优秀滋补品牌商”精英班&鲜炖鱼胶师培训考核班 前言 在国家提倡全民养生,国民健康意识增强&#xf…

【从零开始学微服务】09.为什么需要服务注册发现?

大家好,欢迎来到万猫学社,跟我一起学,你也能成为微服务专家。 微服务调用的问题 在上一篇文章中,我们深入探讨了微服务架构的引入过程。在这种架构中,原本庞大且复杂的单体应用会根据业务需求被拆分成一系列精简的小型…

MySQL空间数据学习

一、MySQL空间数据形式 MKT 已知文本(WKT)格式。用已知文本(WKT)表示几何值是为用ASCII格式交换几何数据而设计的。OpenGIS规范提供了一个BackusNaur语法,它指定了写入WKT值的正式生成规则。 MKB 已知二进制&#xff…

【真题解析】系统集成项目管理工程师 2021 年上半年真题卷(综合知识)

本文为系统集成项目管理工程师考试(软考) 2021 年上半年真题(全国卷),包含答案与详细解析。考试共分为两科,成绩均 ≥45 即可通过考试: 综合知识(选择题 75 道,75分)案例分析(问答题 4 道,75分)综合知识(选择题*75)1-10 题11-20 题21-30 题31-40 题41-50 题51-60 …

LNMP环境

目录 安装Nginx MySQL PHP安装搭建 部署Discuz!社区论坛 安装Nginx 1、关闭防火墙 2、安装依赖包 3、解包 4、配置路径编译安装 5、优化路径创建软连接 6、添加Nginx服务 7、赋权 8、启动服务 9、检查是否安装成功 MySQL 1、安装依赖环境 2、创建运行用户 3、…

带你深入学习“反射”技术

博主介绍: ✌博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家✌ Java知识图谱点击链接:体系化学习Java(Java面试专题) 💕💕 感兴趣的同学可以收…

Git入门到精通全套教程(涵盖GitHub\Gitee码云)

一个小时搞定Git 对应的视频教程讲解: Git入门到精通全套教程(涵盖GitHub\Gitee码云)_哔哩哔哩_bilibili 目录 1. 为什么要使用版本控制软件 2. 市场上的版本控制软件 3. Git简介 3.1Git简介 3.2集中式vs分布式 3.3作用 二、Git的使用…

【MySQL基础 | 第二篇】数据处理之分组查询

前言 查询语句属于DML(Data Manipulation Language)数据操作语言的其中一种,用于从数据库中提取所需的数据。通过灵活的条件和组合,查询语句帮助用户有效地获取、过滤和排序数据,满足各种信息需求。 文章目录 前言1️⃣…

阿里企业邮箱注册申请流程(图文详解)

2023阿里云企业邮箱注册流程,企业邮箱分为免费版、标准版、集团版和尊享版,阿里云百科分享企业邮箱版本区别,企业邮箱收费标准,以及阿里企业邮箱详细注册开通流程,包括阿里云账号注册、实名认证、企业邮箱版本区别及选…

基于Fedora 38的Ultramarine Linux 38推出了System76的调度器

导读Ultramarine Linux 38已经发布,它是另一个基于Fedora Linux的发行版,具有Budgie、GNOME、KDE Plasma和 elementary OS的Pantheon桌面环境的四个版本。 基于Fedora Linux 38,但默认使用Linux内核6.3,Ultramarine Linux 38&…

人工智能的几个概念

一、什么是人工智能 人工智能不是最近几年才兴起的,它已经有几十年发展的历史,下面是业内公认的一种关于人工智能概念的定义:人工智能(Artificial Intelligence):缩写为AI,是研究开发用于模拟、…

报名开启!2023大模型应用创新挑战赛来啦

满脑创意无处落地? 满身技术无人看到? 飞桨邀你开启大模型应用创意挑战之旅 寻找那个最具创意的你 资深开发者指导,助你落地“黄金”项目 大模型从业者合作交流 找到创业道路上的partner 高额奖金、技能提升、优质项目 官方扶持落地&#xff…

MCScanX安装与使用

为什么要写这篇文章: 最近因为朋友需要用到MCScanX画两个物种的共线性点图,但是发现搜到的blog中所提供的安装方法都不太相同,且在都会出现或多或少的问题,所以来找我帮忙,我搜到的所有blog安装链接http://chibba.pgml…

Flink的TopN

1.为什么定时器的时间设置为,窗口的end值1ms就可以呢? 因为定时器是下游,水位线是取的多个上游的最小的, 水位线是跟在数据后面的,所以当定时器的时间到达时,上游一定计算完成了,并且数据已经在…

LLM - 搭建 DrugGPT 结合药物化学分子知识的 ChatGPT 系统

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/131384199 论文:DrugChat: Towards Enabling ChatGPT-Like Capabilities on Drug Molecule Graphs DrugChat,基…

便携式明渠流量计比对装置的基本要求

便携式明渠流量计比对装置的基本要求有哪些? 符合国标要求中对流量监测单元的比对(每2分钟采集一次数据,连续记录 6次数据与在线流量计数据进行液位误差比对,测量10分钟内的流量数据与在线流量计数据进行流量误差比对)…

springboot服务时间筛选问题,同一服务部署在本地和Linux服务器,同样的时间筛选数据不一致

项目场景: springboot项目通过时间筛选数据、 问题描述 时间筛选问题,同一服务部署在本地和Linux服务器,同样的时间筛选数据不一致 接收的参数 JsonFormat(pattern "yyyy-MM-dd") private Date queryDate;服务器打印日志出来的…

Linux常用命令——fsck命令

在线Linux命令查询工具 fsck 检查并且试图修复文件系统中的错误 补充说明 fsck命令被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化,可用fsck指令尝试加以修复。 语法 fsck(选项)(参数)选项 -a:自动修复文件系统,不询…

JavaScript数组遍历的各种方式

目录 第一种方式(for循环) 第二种方式(forEach 遍历) 第三种方式(for...in) 第四种方式(for...of) 第五种方式(map方法遍历) 六、性能对比 第一种方式&…

【yolov5系列】将yolov5s模型部署到SigmaStar的9383芯片上

今年年初,接触了星宸科技(sigmastar)的芯片9383,将深度学习模型进行部署,使用sigmastar的深度学习加速硬件IPU进行模型推理。这里简单记录下sigmastar相关内容。 补充说明,之前使用的是瑞芯微的芯片&#x…