Java 通过文本文件搜索红黑树

Java 通过文本文件搜索红黑树,java,red-black-tree,Java,Red Black Tree,我正在做一个学校项目,它的字典应用程序使用红黑树。。所以程序读取一个文本文件,每行只有一个单词。 当我进行搜索时,如果输入的字母大小不同,则该单词不可用。。例如,如果文件中有“Lion”一词,而我在程序中搜索了“Lion”,则表示字典中没有该词。。这是我的搜索方法。请帮我解决这个问题 public static int search(Node root,String data) { while(!root.isNullLeaf) { String temporary=root.d

我正在做一个学校项目,它的字典应用程序使用红黑树。。所以程序读取一个文本文件,每行只有一个单词。 当我进行搜索时,如果输入的字母大小不同,则该单词不可用。。例如,如果文件中有“Lion”一词,而我在程序中搜索了“Lion”,则表示字典中没有该词。。这是我的搜索方法。请帮我解决这个问题

public static int search(Node root,String data)
{ 
    while(!root.isNullLeaf)
{    String temporary=root.data;
    if(temporary.equals(data))
    {
        System.out.print("yaaay "+ root.data +" is found\n");
        return 0;
    }
   if(temporary.compareTo(data)>0)
       root=root.left;

     if(temporary.compareTo(data)<0)
       root=root.right;

}
    System.out.println("ouch "+ data+ " not found\n");
    return 1;
    }
publicstaticint搜索(节点根,字符串数据)
{ 
而(!root.isNullLeaf)
{String temporary=root.data;
if(临时相等(数据))
{
System.out.print(“找到yaaay”+root.data+”\n);
返回0;
}
if(临时比较(数据)>0)
root=root.left;

如果(临时)与(数据)比较您应该使用
XXXIgnoreCase
函数来满足这些类型的需求

temporary.equals(data)
变成
temporary.equalsIgnoreCase(data)
temporary.compareTo(data)
变成
temporary.compareTignoreCase(data)

我还修改了部分代码以简化逻辑

public static int search(Node root,String data) { 
    while(!root.isNullLeaf) {    
        String temporary=root.data;
        if(temporary.equalsIgnoreCase(data)) {
            System.out.print("yaaay "+ root.data +" is found\n");
            return 0;
        }
        int compareResult = temporary.compareToIgnoreCase(data);
        if(compareResult > 0)
            root = root.left;
        else
            root = root.right;   
    }
    System.out.println("ouch "+ data+ " not found\n");
    return 1;
}