查询自己编写了多少java代码

用Java编写城市公交查询系统 在本文中,我们使用Java编写了一个城市公交查询系统,该系统采用了MVC架构,并使用Spring和MyBatis框架。该系统可以查询公交车路线、站点和到达时间等信息,并且可以通过命令行展示查询结果。通过阅读这篇文章,相信读者已经掌握了Java编写实际应用程序的基本思路和操作方法,可以根据自己的需求和情况定制和扩展这个城市公交查询系统。 阅读详情

基于java开发的查询你编写了多少代码的小程序

开发工具:eclipse
开发环境:jdk1.8

导入的包

import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

代码统计工具

/**
 * 代码统计工具
 * 
 * @author Freedom
 */
public class CodesStatistics {

	private List<String> javaFiles;

	private Pattern patternLines;
	private Pattern patternWhiteSpaceLines;
	private Pattern patternCommentLines;

	{
		// 匹配行表达式
		patternLines = Pattern.compile("\\n");
		// 匹配空白行表达式
		patternWhiteSpaceLines = Pattern.compile("\\n[\\s| ]*\\n");
		// 匹配注释表达式
		patternCommentLines = Pattern.compile("(//)|(/\\*)|(\\*)");
	}

	public CodesStatistics(File baseDir) {
		// 容器初始化
		javaFiles = new ArrayList<String>();
		// 读取Java文件到集合
		readJavaFilesToList(baseDir);
		// 文件总数
		System.out.println("java文件总数:" + javaFiles.size() + "个");
	}

读取所有Java文件到集合中

/**
	 * 读取所有Java文件到集合中
	 * @param dir
	 */
	public void readJavaFilesToList(File dir) {
		File[] files = dir.listFiles();
		if (files != null) {
			for (int i = 0; i < files.length; i++) {
				File f = files[i];
				if (f.isFile() && isJavaFile(f)) {
					// 将文件绝对路径添加到集合
					javaFiles.add(f.getAbsolutePath());
				} else {
					// 对目录递归
					readJavaFilesToList(f);
				}
			}
		}
	}

判断指定文件是否是Java文件

/**
	 * 判断指定文件是否是Java文件
	 * @param f
	 * @return
	 */
	public boolean isJavaFile(File f) {
		return f.getName().toLowerCase().endsWith(".java");
	}

匹配所有代码行

/**
	 * 匹配所有代码行
	 * @return
	 */
	public int countLines() {
		int count = 0;
		for (int i = 0; i < javaFiles.size(); i++) {
			String content = FileUtils.readToString(javaFiles.get(i));
			Matcher matcher = patternLines.matcher(content);
			while (matcher.find()) {
				count++;
			}
		}
		return count;
	}

匹配空白代码行

/**
	 * 匹配空白代码行
	 * @return
	 */
	public int countWhiteSpaceLines() {
		int count = 0;
		for (int i = 0; i < javaFiles.size(); i++) {
			String content = FileUtils.readToString(javaFiles.get(i));
			Matcher matcher = patternWhiteSpaceLines.matcher(content);
			while (matcher.find()) {
				count++;
			}
		}
		return count;
	}

匹配注释代码行

/**
	 * 匹配注释代码行
	 * @return
	 */
	public int countCommentLines() {
		int count = 0;
		for (int i = 0; i < javaFiles.size(); i++) {
			String content = FileUtils.readToString(javaFiles.get(i));
			Matcher matcher = patternCommentLines.matcher(content);
			while (matcher.find()) {
				count++;
			}
		}
		return count;
	}

匹配有效代码行

/**
	 * 有效代码行
	 * 
	 * @return
	 */
	public int countValidLines() {
		return countLines() - countWhiteSpaceLines() - countCommentLines();
	}

创建读取代码的绝对路径来获取代码的内容的类

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;

public class FileUtils {

	/**
	 * 根据提供的文件路径,读取文件中的文本并返回
	 * @param filePath
	 * @return
	 */
	public static String readToString(String filePath){
		BufferedReader br = null;
		try {
			FileInputStream fis =  new FileInputStream(filePath);
			br = new BufferedReader(new InputStreamReader(fis));
			String str = null;
			StringBuffer buff = new StringBuffer("");
			while((str = br.readLine()) != null) {
				buff.append(str).append("\n");
			}
			return buff.toString();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally {
			if(br != null) {
				try {
					br.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
		return null;
	}
}

使用main方法运行代码

public static void main(String[] args) {
		//XXXXX的部分插入你源代码地址即可
		File dir = new File("XXXXXXXXXXXXX");
		CodesStatistics cs = new CodesStatistics(dir);

		int lines1 = cs.countLines();
		System.out.println("总代码行数:" + lines1);

		int lines2 = cs.countWhiteSpaceLines();
		System.out.println("空白代码行数:" + lines2);

		int lines3 = cs.countCommentLines();
		System.out.println("注释代码行数:" + lines3);

		int lines4 = cs.countValidLines();
		System.out.println("有效代码行:" + lines4);
	}

运行截图
运行截图

Java中的多表条件查询 开发工具与关键技术:Eclipse 带条件多表联查 作者:廖 茂 撰写时间:2020年08月08日 在初步进入Java语言的学习后,发现java中的逻辑思想和C#的逻辑思想几乎一致,当然只是逻辑思想,要实现功能的具体实现代码还是不同的,毕竟语言不同,在java中要实现对数据库(MySQL数据库)中的数据进行增删改查这些操作,主要是通过SQL语句来实现的,也就短短几句代码就能对数据库中的数据进行操作,但是要把这些操作体现在页面上就需要一些方法来实现了,接下来我们来看一下如何实现带条件的多表联查,首先我们来 阅读详情

相关推荐

Adobe Acrobat Pro(Adobe PDF) - 使用技巧

Adobe Acrobat Pro为Adobe出品的PDF查看和编辑软件,下文简称Adobe PDF,该软件功能强大,拥有查看PDF、编辑PDF、打印PDF、导出PDF、合并文件、组织页面、文本标注、注释、动作向导、等功能。本文介绍Adobe PDF的一些使用技巧,最后介绍软件设置。

NSJim的博客 4万+

IDEA统计自己写了多少行Java代码,看看自己的辛劳成果吧

IDEA统计自己写了多少行Java代码,看看自己的辛劳成果吧

cucgyfjklx的博客 2万+

5g LDPC编译码-LDPC编码

本文摘要:LDPC编码是5G业务信道的核心编码技术,属于线性分组码。5G中LDPC编码分为两种基图类型(BG1和BG2),通过码块分割、CRC处理等步骤实现。编码过程主要涉及校验矩阵生成和校验位计算,其中校验矩阵采用稀疏矩阵结构。文中详细介绍了5G LDPC编码的具体实现流程,包括码块分割规则、校验位生成方法,以及两种基图(BG1和BG2)在矩阵结构和参数设置上的差异,重点阐述了通过模块化方法求解校验比特位的技术路径。

weixin_38270585的博客 1365

统计 Git 代码行数

如果您想要在代码行数大于 2000 时自动忽略提交,请在您的脚本中添加一个额外的条件。例如,以下代码段会在每次提交时检查代码行数是否大于 2000 行,并将代码行数大于 2000 的提交视为“初始化项目框架或者引用第三方库文件”,不计入代码行数:```此代码段将每个提交的代码行数添加到 $total_lines 变量中,但会忽略任何提交的代码行数大于 2000 的提交。这个命令会输出每个提交的代码行数,每行一个。这个命令会将每个提交的代码行数导出到名为 lines.txt 的文件中。

bwlab的博客 7352

Anthropic发布10款金融AI智能体模板深度解析:重构华尔街工作范式

摘要:2026年5月,Anthropic发布10款金融AI智能体模板,标志着AI从辅助工具升级为"虚拟同事"。这些智能体深度集成到Word、Excel等办公软件中,覆盖投行、商行、资管三大场景的核心工作流,预计可提升效率35-85%。技术架构基于Claude3.5Sonnet模型,具备200K上下文窗口和95%+的财务图表解析准确率,并与彭博等金融数据源直连。发布引发传统金融数据服务商股价下跌,摩根大通等机构则视其为成本优化工具。落地需分四阶段推进,关键在于数据治理和复合型人才培养。未来

yyq916的博客 635

UG/NX二次开发实例流程样例(nx1980+vs2019)

以上就是基本操作了,下面进入界面开发流程,nx1980的界面开发操作,也需要在块UI界面编辑器中操作,很多教程都没有讲解这一点,尤其是如何进入块UI界面编辑器,那么我在这里详细说明一下步骤。》,这一篇文章我们将详细讲述,如何开发一个具体的功能——根据用户输入的数据,在特定的点上创建一个指定大小的立方体。可以将文件保存当桌面,笔者保存在桌面的create_block目录中了,如下图所示,可以发现生成了三个文件。4.在新建模型完成后,我们准备创建交互UI,按照下图所示的顺序,找到块UI界面编辑器,。

秋月的私语 1万+

如何统计自己写的代码量

一背景介绍 在公司实习,需要统计自己写了多少代码; 或者需要统计某个系统自己贡献度如何,也或者是自己就是想计算一下自己代码能力,个人觉得,代码量这个东西,没有多大度量价值,可是HR喜欢啊。 二 统计命令: git log --author="$(git config --get user.name)" --pretty=tformat: --numstat | awk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines

Y 5996

从零到一:Halcon手眼标定的实战避坑指南

本文详细解析了Halcon手眼标定的完整流程,重点介绍了Eye-in-Hand和Eye-to-Hand两种模式的实操技巧与常见陷阱。通过九点法、N点法等实战案例,提供硬件配置检查、数据采集策略及误差修正方案,帮助开发者提升机械臂与视觉系统的协同精度,适用于工业自动化领域的精准定位与抓取任务。

neovim7hacker的博客 234

如何查看代码量

命令行 查看git上的个人代码量: git log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add,...

FrancisBingo的博客 6157

第五节_PySide6基本窗口控件_主窗口和标签

本文介绍了PySide6中主窗口和标签控件的使用。主要内容包括: 窗口控件分类: QWidget是基础窗口部件,可作为独立窗口或子部件 QMainWindow提供标准应用程序框架,包含菜单栏、工具栏等 QDialog用于对话框,支持模态交互 主窗口创建: 演示了如何创建QMainWindow子类 实现了窗口居中、设置图标、状态栏等功能 提供了窗口几何信息的获取方法 QLabel标签控件: 继承自QFrame类 用于显示文本或图像 文章通过代码示例详细说明了主窗口的创建和使用方法,包括位置控制、图标设置等常见

su桥木的博客 1021

【WRF数据介绍第二期】气象驱动场数据介绍及下载

【WRF数据介绍第二期】气象驱动场数据介绍及下载

WW、forever的博客 2160

git怎么样快速统计自己的代码总行数

怎么样在git统计自己的代码行数和commit数量

github 8339

YOLOv11安卓端部署终极指南:从训练到NCNN移植,30分钟搞定手机实时检测!

本文详细介绍了YOLOv11模型在安卓设备上的NCNN部署全流程。主要内容包括:1) 环境配置要求(Python3.8+、PyTorch、NCNN框架等);2) COCO2017数据集准备与配置;3) 模型训练建议(使用RTX3090,50-100个epoch);4) 模型导出转换步骤(ONNX格式转换、NCNN优化);5) 安卓端实现的关键优化(快速sigmoid实现、纯C++NMS等)。项目在安卓CPU模式下可实现20FPS的稳定检测,并提供了激活函数选择、模型量化等性能调优建议。通过参考多个开源项目,

FJN110的博客 1726

图书查询java代码_java编写的图书查询系统代码 帮帮忙呗

java编写的图书查询系统代码 帮帮忙呗关注:126答案:2mip版解决时间 2021-01-12 00:40提问者女人不需要倾国倾城2021-01-11 18:53java编写的图书查询系统代码 帮帮忙呗最佳答案二级知识专家失心瘋2021-01-11 19:56import java.awt.Color;import java.awt.Graphics;import java.awt.e...

weixin_39651325的博客 345

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

java中list查询某个字段重复数多少个 博客

Java中List查询某个字段重复数多少个 作为一名经验丰富的开发者,我将向刚入行的小白介绍如何在Java中查询List中某个字段的重复次数。本教程将涵盖整个流程,包括必要的代码示例和注释。 流程概览 以下是实现此功能的主要步骤: 步骤 描述 1 定义数据模型 2 创建List集合 3 编写查询重复数...

weixin_40362456的博客 408

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

使用的递归,查询自己的Java项目一共有多少行java代码

查询自己写了多少行代码

fashion_dog的博客 1648

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

在SQL中进行多表查询 和 在Java代码中循环查询

适用于查询逻辑相对固定且对性能要求较高的场景。

jkl12345669的博客 1060

利用递归查询有多少行Java代码

查询写了多少行Java代码

qq_34012703的博客 349

如何编写高质量的Java代码

Java代码安全规范 本文目的 故障分析 资源分析 安全条目 QPS CPU Memory 磁盘I/O Network 代码工程 Web安全 附录 Redis网卡打满参照表 参考 本文目的 向Nasa的《NASA的10条代码编写原则》学习,目的有二:一是约束Java代码的使用、规避较高危的代码,二是code review更易识别。有很多优秀的JA...

作一个独立连续的思考者 4521

java 查询后 jsonobject key 排序_商品品牌业务之后台Java代码的编写

今天是刘小爱自学Java的第146天。感谢你的观看,谢谢你。学习计划安排如下:昨天实现了前端页面的编写以及发送请求,今天关于异步请求工具axios的简单说明。关于商品品牌,后台代码的完整编写。两个重要知识点:分页助手插件的使用,通用mapper高阶查询的使用。一、异步请求工具axios我们以前使用的是jQuery发送ajax请求,但是在Vue中还要引入jQuery不太方便。Vue官方推荐的ajax...

weixin_35709851的博客 151

JDBC005--使用java来编写查询同一张表的通用代码

使用java编写针对一张数据表的查询操作的代码,相较于之前的更改操作,我们需要添加的有两个,一个是结果集元数据,另外一个是反射。

干就完了 725

Java版PageRank及网站收录情况查询代码

     在Google这个由10的100次方得名的站点中,各种评估网站的算法层出不穷,而PageRank即是其中之一。  Google的PageRank根据网站的外部链接和内部链接的数量和质量俩衡量网站的价值。PageRank背后的概念是,每个到页面的链接都是对该页面的一次投票,被链接的越多,就意味着被其他网站投票越多。这个就是所谓的“链接流行度”——衡量多少人愿意将他们的网站和你的网站挂钩。P

【Java究竟怎么玩?】 5719

编写第一个java代码

JDK下载、配置与第一个Java代码

m0_74012211的博客 2489

oracle里的java代码,oracle中编写java代码

使用sql语句创建create or replace and compile java source named test_java_source aspackage test_java_source;public class Test{public void Test(){}//都是static的public static String sayHello(){return "Hello,Worl...

weixin_42330839的博客 980

java商品编写代码_商品品牌业务之后台Java代码的编写

今天是刘小爱自学Java的第146天。感谢你的观看,谢谢你。商品品牌业务之后台Java代码的编写-1.jpg (50.46 KB, 下载次数: 1)2021-2-5 00:22 上传学习计划安排如下:昨天实现了前端页面的编写以及发送请求,今天关于异步请求工具axios的简单说明。关于商品品牌,后台代码的完整编写。两个重要知识点:分页助手插件的使用,通用mapper高阶查询的使用。一、异步请求工具a...

weixin_30444517的博客 301

java模糊查询代码_Java模糊查询方法详解

这篇文章主要为大家详细介绍了Java模糊查询方法的实现,实例教你如何用Java做模糊查询结果,感兴趣的小伙伴们可以参考一下当我们需要开发一个方法用来查询数据库的时候,往往会遇到这样一个问题:就是不知道用户到底会输入什么条件,那么怎么样处理sql语句才能让我们开发的方法不管接受到什么样的条件都可以正常工作呢?这时where '1'='1'加上list就可以完美解决这个问题了,废话少说,上代码:// ...

weixin_36079387的博客 6996
上一篇: 基于java图形界面开发定时关机小程序
下一篇: 基于java开发一个小程序实现斗地主发牌功能
CodingPeasan
博客等级 码龄7年 6粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值