如何用另一个变量值创建一个具有名称的变量

时间:2020-02-09 14:30:15

标签: java database

所以我要创建一个排序字典。我正在文本文件中收集已知单词,我的程序从那里获取它们。我创建了一个WORD类,它有2个变量-拼写和含义。现在,我希望我的词典中有一个toword的方法-因此它将接受单词的拼写并创建一个以该单词的拼写为名称的WORD类型变量。但是Java区分输入是-公用WORD到WORD(字符串拼写)-的“拼写”,并且不会将其输入-WORD拼写=新WORD(拼写,含义)的拼写。而是使用名称“ spelling”(而不是输入的值)创建WORD。我的代码现在包含很多本机语言,就像我现在在学校里所做的那样,但是我现在仅在此处添加必要的部分。

这是WORD类:

    private String spelling;
    private String meaning;  

    public WORD(String spelling, String meaning){ 
        this.spelling=spelling;
        this.meaning=meaning;
    }
    public String means(){  
        return meaning;
    }
    public String spells(){  
        return spelling;
    }
    public boolean is(String smth){
        if (smth.equalsIgnoreCase(spelling)){
            return 1==1;
        }
        else{
            return 1==0;
        }
    }
    public boolean isSynonym(WORD syno){ 
        if (meaning==syno.means() ) {
            return 1==1;
        }
        else {
            return 1==0;
        }
    }
}

这是词汇类中的方法:

public class vocabulary {

 public WORD toWORD(String spelling) throws FileNotFoundException{
        File J= new File("vocabulary.txt");
        Scanner seeker= new Scanner(J);
        String meaning="";
        int lineNum= 0;
        while (seeker.hasNextLine()){
            String line = seeker.nextLine();
            lineNum++; //vahetab rida
            if(line.startsWith(spelling)) {
                meaning= seeker.findInLine( " - ");
            }
        }
        WORD spelling = new WORD (spelling, meaning); //this should be a WORD not named "spelling", but the content of spelling (inputed when writing: vocabulary.toWORD("car")) 
        return spelling //this should return the new word with the spelling inputed
    }
}

我也很难理解文本的含义,因为我对扫描仪命令不太熟悉。我对此进行了一些研究,发现大多数人都使用另一个命令来读取文件,但是由于我没有学过,我宁愿不使用它。

这也是vocabulary.txt的内容(目前):

hello - most common greeting
car - a motor vehicle for transport cargo or people on roads and streets.
candle - a light source made from an easily meltable substance and a solid core

因此在我的主要方法中,我应该能够写WORD car = vocabulary.toWORD(car); 在那之后,我应该能够使用诸如car。意义之类的命令来输出意义。

我希望我的问题可以理解。我的第一个问题是语法错误。现在已经差不多一年没有使用英语了。

0 个答案:

没有答案