数码视讯笔试题

本文介绍三个实用的Java编程技巧:1. 如何读取并打印指定文件的内容;2. 计算并显示从今天起97天后的具体日期及星期;3. 使用高效的算法找出100以内的所有素数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、输入文件的名字,以字符串的形式打印出文件的内容

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.FileReader;
import java.io.File;
import java.io.IOException;
private static void readFile(String filename) throws IOException {
	File file = new File(filename);
	if (file.exists() && file.isFile()) {
		BufferedReader buf = new BufferedReader(new FileReader(file));
		String line = null;
		while ((line = buf.readLine()) != null) {
			System.out.println(line);
		}
		buf.close();
	} else {
		System.out.println("文件不存在");
	}
}


 

 

2、计算从今天后的97天是星期几,日期格式为2010-09-23,打印出97天后的日期

public class Test{
	public static void main(String args[]){
		  // 得到当前日期
		  Calendar calendar = Calendar.getInstance();
		  // 加上97天
		  calendar.add(Calendar.DAY_OF_YEAR, 97);
		  // 时间格式化
		  SimpleDateFormat mFormat = new SimpleDateFormat("yyyy-MM-dd");
		  // 输出日期
		  System.out.println("今天之后的第97天是:" + mFormat.format(calendar.getTime()));
		  // 从新格式化
		  mFormat = new SimpleDateFormat("E");
		  // 显示周几
		  System.out.println(mFormat.format(calendar.getTime()));
		} 	
}


 

3、写一个方法求100以内的素数,要求效率尽可能的高。

public class Test{
	public static void main(String args[]){
			int i, j;
			int[] a = new int[101];
			for(i=0; i<101; i++){   //初始化数组
				a[i] = 1;
			}
			//筛选出100内的所有素数,从小到大筛去一个已知素数的所有倍数,例如根据2可筛去4、6、...、98,
			//根据3可筛去9、15、...、99;
			//由于4已被筛去,下一个为素数5,依次类推
			for(i=2; i<101; i++){
				if(a[i]!=0){
					for(j=i+i; j<101; ){
						if(j%i == 0){
							a[j] = 0;
							j = j + i;
						}
					}
				}
			}
			for(i=2; i<101; i++){
				if(a[i] != 0){
					System.out.println(i);
				}
			}
		} 	
}


 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值