51,407
社区成员
发帖
与我相关
我的任务
分享import java.io.*;
import java.util.Scanner;
public class mycode
{
public static void main(String[] args) throws IOException
{
String[] list= new String[10];
String[] similarlist=new String [1000];
Scanner kb=new Scanner(System.in);
System.out.print("Enter the starting word: ");
String keyword=kb.nextLine();
list=getlist (keyword.length());
similarlist=captureword(list,keyword);
System.out.println("I found "+similarlist.length+" similar words:");
for (int i=0;i<similarlist.length;i++)
{
System.out.println(similarlist[i]);
}
kb.close();
}
public static String[] doublesize(String[] list)
{
String [] newlist=new String[list.length*2];
System.arraycopy(list, 0, newlist, 0, list.length);
return newlist;
}
public static String[] getlist (int length) throws IOException
{
int numWords=0;
String word;
String [] list = new String[100];
Scanner file = new Scanner(new File("2of12inf.txt"));
while (file.hasNextLine())
{
word = file.nextLine();
if(word.length() == length)
{
list[numWords++]=word;
if (list.length==numWords)
{
list=doublesize(list);
}
}
}
file.close();
return list;
}
public static Boolean similarword(String word,String inlist,int length)
{
int similarity=0;
for (int i=0;i<length;i++)
{
if (inlist!=null)
{
if (word.charAt(i)==inlist.charAt(i))
{
similarity++;
}
}
}
if (similarity==length-1)
{
return true;
}
else
{
return false;
}
}
public static String[] captureword(String [] list,String word)
{
int count=0;
String [] newlist= new String[100];
for (int i=0;i<list.length;i++)
{
if (similarword(word,list[i],word.length()))
{
newlist[count]=list[i];
count++;
}
}
String [] similarlist= new String[count];
for (int j=0;j<count;j++)
{
similarlist[j]=newlist[j];
}
return similarlist;
}
}