微软面试

一.i++和++i的区别

1.如果在程序中单独使用,则都是往上加一的意思

2.如果是赋值语句(赋于一个变量),那么++i则是先加一,然后赋值(所谓的前缀加),i++则是先赋值,然后再加一(所谓的后缀)

二.java按行读取磁盘中的某个文件,然后正则匹配某个特定的字符串。

package com.bili.hello;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Hello {
    public static void main(String[] args) throws IOException {
        File file=new File("/home/bili/test.txt");
        try {
//先用装饰器模式和适配器模式,将文件流转化为BufferedReader BufferedReader is
=new BufferedReader(new InputStreamReader(new FileInputStream(file))); String str;
//先获取正则表达式编译后的pattern Pattern p
=Pattern.compile(".[c-w.]{3,10}[.][c-w.][.][a]|.+");
//按行读取,每调用一次readLine()方法,就算读取了一行数据
while((str=is.readLine()) != null){
//利用pattern去匹配某个字符串 Matcher m
=p.matcher(str);
//调用m的matches()方法,返回boolean类型
if(m.matches()){ System.out.println(m.group()); } } } catch (FileNotFoundException e) { e.printStackTrace(); } } }
原文地址:https://www.cnblogs.com/james111/p/7660864.html