Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用此代码将其更改为没有任何数组?_Java_Arrays_Filereader_Filewriter - Fatal编程技术网

Java 如何使用此代码将其更改为没有任何数组?

Java 如何使用此代码将其更改为没有任何数组?,java,arrays,filereader,filewriter,Java,Arrays,Filereader,Filewriter,嘿,社区,我想就我正在做的学校作业寻求一些帮助。为了总结作业,我们基本上必须创建一个文本文件,并在一行上写两件事。然后程序要求用户输入,如果该输入与任何行上的第一项匹配,则打印第二项 例如: 行:“brb马上回来” 用户输入:“brb” 输出:“马上回来” 我成功地做到了这一点,这是我的代码。您可以运行它以更清楚地了解它的功能 // The "NetSpeak_raminAmiri" class. import java.io.*; public class NetSpeak_raminAmir

嘿,社区,我想就我正在做的学校作业寻求一些帮助。为了总结作业,我们基本上必须创建一个文本文件,并在一行上写两件事。然后程序要求用户输入,如果该输入与任何行上的第一项匹配,则打印第二项

例如:

行:“brb马上回来” 用户输入:“brb” 输出:“马上回来”

我成功地做到了这一点,这是我的代码。您可以运行它以更清楚地了解它的功能

// The "NetSpeak_raminAmiri" class.
import java.io.*;
public class NetSpeak_raminAmiri
{
    public static void main (String[] args)
    {
        sendLines ();
        readLines ();
    } // main method


    public static void sendLines ()
    {
        try
        {
            FileWriter fw = new FileWriter ("net.txt");
            PrintWriter pw = new PrintWriter (fw);

            pw.println ("brb\tbe right back");
            pw.println ("lol\tlaugh out loud");
            pw.println ("g2g\tgot got go");
            pw.println ("d8\tdate");
            pw.println ("h8\thate");
            pw.println ("luv\tlove");
            pw.println ("pos\tparents over shoulder");
            pw.println ("u\tyou");
            pw.println ("sup\twhat's up");
            pw.println ("yolo\tyou only live once");
            pw.println ("smh\tshake my head");
            pw.println ("lmao\tlaugh my ass off");
            pw.println ("ttyl\ttalk to you later");
            pw.println ("idc\ti don't care");
            pw.println ("idk\ti don't know");
            pw.println ("ily\ti love you");
            pw.println ("bae\tdanish word for poop");
            pw.println ("omg\toh my god");
            pw.println ("tmi\ttoo much information");
            pw.println ("tbh\tto be honest");
            pw.println ("jk\tjust kidding");
            pw.println ("ftw\tfor the win");
            pw.println ("np\tno problem");

            pw.close ();
        }
        catch (IOException e)
        {
        }
    } //sendLines method


    public static void readLines ()
    {
        try
        {
            FileReader fr = new FileReader ("speak.txt");
            BufferedReader br = new BufferedReader (fr);
            String input;
            String line;

            System.out.println ("What net-speak would you like to translate?");
            input = In.getString ();

            while ((line = br.readLine ()) != null)
            {
                String translate[] = line.split ("\t");
                for (int i = 0 ; i < translate.length - 1 ; i++)
                {
                    if (input.equals (translate [i]))
                    {
                        System.out.println (translate [i + 1]);
                    }
                }
            }
        }
        catch (IOException e)
        {
            e.printStackTrace ();
        }
    } //readLines method
} // NetSpeak_raminAmiri class
//NetSpeak\u raminAmiri”类。
导入java.io.*;
公共类NetSpeak_raminAmiri
{
公共静态void main(字符串[]args)
{
发送线();
readLines();
}//主方法
公共静态无效发送行()
{
尝试
{
FileWriter fw=新的FileWriter(“net.txt”);
PrintWriter pw=新的PrintWriter(fw);
pw.println(“brb\tbe右后卫”);
pw.println(“lol\t大声说出”);
pw.println(“g2g\tgot got”);
pw.println(“d8\tdate”);
pw.println(“h8\thate”);
pw.println(“luv\tlove”);
pw.println(“pos\t肩上租金”);
pw.println(“u\tyu”);
pw.println(“sup\t什么事”);
pw.println(“yolo\t你只活一次”);
pw.println(“摇我的头”);
pw.println(“lmao\t把我的屁股放下来”);
pw.println(“ttyl\ttalk to your later”);
pw.println(“idc\ti不在乎”);
pw.println(“idk\ti不知道”);
println(“我爱你”);
pw.println(“bae\tdanish单词表示粪便”);
println(“我的上帝”);
pw.println(“tmi\t太多信息”);
pw.println(“老实说,待定”);
println(“jk\t只是开玩笑”);
pw.println(“ftw\t获胜”);
pw.println(“np\tno问题”);
pw.close();
}
捕获(IOE异常)
{
}
}//发送线方法
公共静态无效读线()
{
尝试
{
FileReader fr=新的FileReader(“speak.txt”);
BufferedReader br=新的BufferedReader(fr);
字符串输入;
弦线;
System.out.println(“您想翻译什么网络语言?”);
input=In.getString();
而((line=br.readLine())!=null)
{
字符串translate[]=line.split(“\t”);
for(int i=0;i
一切都很好,直到我注意到,“注意:不要使用数组” 现在我被卡住了


我需要帮助,弄清楚如何做与我所做的代码相同的事情,但没有数组。有办法吗?

您可以使用IndexOf和Substring

        while ((line = br.readLine()) != null)
        {
            int p = line.IndexOf('\t');
            string key = line.Substring(0, p);
            if (input.equals(key))
            {
                System.out.println(line.Substring(p+1));
                break;
            }
        }

您可以使用IndexOf和Substring

        while ((line = br.readLine()) != null)
        {
            int p = line.IndexOf('\t');
            string key = line.Substring(0, p);
            if (input.equals(key))
            {
                System.out.println(line.Substring(p+1));
                break;
            }
        }
使用
Map
HashMap
使用
Map
HashMap