要求:统计一个src文件下的所有.java文件内的代码行数(注释行.空白行不统计在内) 分析:先封装一个静态方法用于统计确定的.java文件的有效代码行数.使用字符缓冲流读取文件,首先判断是否是块注释开头,接着判断是否是块注释结尾,再判断是否是单行注释或者空白行,若都不是则是有效代码,统计行数+1. 对于文件夹路径,采用递归的方法判断子条目是文件还是文件夹,是文件就调用静态统计方法.源代码: public class CalculateRow { public static void main(
网络摘抄,仅作记录学习 EditText在android开发中是一个经常用到的基础控件,功能也很强大,限制输入字符类型,字数什么的.但是最近在工作中遇到了需要控制editText最大可输入行数的要求.这个功能控件本身没有提供,EditText.setMaxLines函数只能控制控件的最大可视高度并不符合要求.要实现控制最大可输入行数势必要用到addTextChangedListener去监听控件中文本的变化,需要实现的函数有三个: public void beforeTextChanged(Ch
理论上来说,总体上file.readlines()可以(取决于实现)不慢于你自己手动的一次次调用file.readline(),因为前者的循环在C语言层面,而你的循环是在Python语言层面. 但是在内存占用上前者可能是后者的好几十百倍,因为前者会一次性把所有数据读取到内存中,而后者只每次读取一行. 更好的写法是: with open('filename') as file: for line in file: do_things(line)
首先感谢czbk的老师,录制的视频,让我们有这么好的学习资料.……—— 统计文件夹java文件的行数,首先想到的肯定是用递归的方法,因为文件夹下面可能包含文件夹,用递归的方法,代码容易写.(这和写简单的网络爬虫很像,一级页面下包含有二级页面的链接,二级页面又包含下一级的超链接)但是,用递归的方式有以下缺点: 如果文件夹层次很多,进而递归深度太大,容易栈溢出 用递归的方式,只能单线程执行,因为这一次的递归依赖于上一次的递归执行的结果 递归方式代码比较简单,如下: public class Line
package test; import java.util.Scanner; //判断输入的数是不是素数 public class Test18 { public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("输入判断的数"); int a = s.nextInt(); for(int i=2 ; i<=a;i++){ //最小的素数是2 if(
//创建的一个包名. package qige; //导入的一个包.import java.util.Scanner; //定义一个类.public class Zy2 { //公共静态的主方法. public static void main(String[] args) { //定义包. Scanner sc = new Scanner(System.in); //获取用户输入的整数值. int b = sc.nextInt(); //把用户输入的数除于10,以方便下面进行运行. int a