📄 typer.java
字号:
import java.util.Random;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.*;
public class Typer {
//定义word数组存放各个字符个数
public static int[] word;
//定义正确,错误个数变量
public static int type,right,wrong;
//定义最大值,最大个数
public static int max,many,Mmax;
/**
* 给最大值,最大个数赋值
*/
public Typer(int Max,int Many)
{
max=Max;
many=Many;
}
/**
* 创建一个初始值都为指定数的word数组
*/
public static void createArray()
{
word=new int[max];
for(int i=0;i<max;i++)
word[i]=many;
}
/**
* 返回word数组的剩余字符数
*/
public static int leftArray()
{
int left=0;
for (int i=0;i<max;i++)
{
left+=word[i];
}
return left;
}
/**
* 返回一个键盘输入的字符串
*/
public static String inputString()
{
BufferedReader buff=new BufferedReader(new InputStreamReader(System.in));
String s=null;
try
{
s=buff.readLine();
}
catch(IOException e)
{
e.printStackTrace();
}
while(s.length()!=Mmax)
{
System.out.println("Error Strings Length!");
s=inputString();
}
return s;
}
/**
* 产生一个指定个数的随即字符串
*/
public static String printString()
{
Random rand=new Random();
String printTemp="";
int num;
char charTemp;
Mmax=leftArray()<max?leftArray():max;
for(int i=0;i<Mmax;i++)
{
num=rand.nextInt(max);
while(word[num]<=0)
num=rand.nextInt(max);
word[num]--;
charTemp=(char)(num+'a');
printTemp+=charTemp;
}
return printTemp;
}
/**
* 返回混淆的字符串
*/
public static String checkString(String printString,String inputString)
{
String errorString="";
char oTemp,iTemp;
type+=printString.length();
for (int i=0;i<Mmax;i++)
{
oTemp=printString.charAt(i);
iTemp=inputString.charAt(i);
if (oTemp==iTemp)
{
right++;
}
else
{
wrong++;
word[(int)(oTemp-'a')]++;
word[(int)(iTemp-'a')]++;
errorString=errorString+iTemp+" as "+oTemp+",";
}
}
return errorString;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -