读取Java源程序找关键字

最近在学Java,遇到不会的习题,网上找都找不到比较简单的解决办法,可能大神们的时间都比较珍贵吧,自己研究花了不少哦时间,想想还是把一些习题答案分享出来,帮助和我一样的初学者。
如标题所示,读取一个Java源程序,找到其中用到的关键字,并统计其个数。

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class calculate {
public static void main(String[] args) throws IOException {
	File file=new File("src/ch6/calculate.java");
	FileReader f=new FileReader(file);
	String s="";
	int ca,count=0;
	while((ca=f.read())!=-1) {
		s+=(char)ca;
	}
	String KEYWORDS[]={"abstract","assert","boolen","break","byte","case","catch","char","class","const",
				"continue","default","do","double","else","enum","extends","final","finally","float","for",
				"if","implements","import","instanceof","int","interface","long","native","new","package",
				"private","protected","public","return","short","static","strictfp","super","switch","synchrpnized",
				"this","throw","throws","transient","try","void","volatile","while"};
	String all[]=s.split("[ \t\\(\\)]");
	for(String info:all)
	{
		System.out.println(info);
		for(String keyword:KEYWORDS) {
			if (info.equals(keyword))
			count++;
		}
	}
	System.out.println(s);
	System.out.println(count);
}
}

解释几点
一、这里是用的关键字数组我也是网上找的,不知道全不全。
二、这里唯一的难点是用正则表达式进行split,我这里是根据对源代码的观察,以回车、空格、左右括号为分隔符对字符串进行分割,/t代表回车,Java正则没有深入了解,个人理解,一个\代表Java编辑器的转义,用于像\t这种,因为在python中/t语义不同,进行编辑器转义后像其他语言一样还需要一个\进行转义,这就是要用\(这样的原因,其它的都比较简单了。

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

returnadsss

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值