gpt4 book ai didi

java - Java中数组变量初始化错误

转载 作者:行者123 更新时间:2023-12-01 07:15:59 24 4
gpt4 key购买 nike

我正在尝试编写一个 Java 程序,该程序读取由 URL 组成的输入文件,从中提取标记,并跟踪每个标记在文件中出现的次数。我编写了以下代码:

import java.io.*;
import java.net.*;

public class Main {

static class Tokens
{
String name;
int count;
}

public static void main(String[] args) {
String url_str,host;
String htokens[];
URL url;
boolean found=false;
Tokens t[];
int i,j,k;

try
{
File f=new File("urlfile.txt");
FileReader fr=new FileReader(f);
BufferedReader br=new BufferedReader(fr);

while((url_str=br.readLine())!=null)
{
url=new URL(url_str);
host=url.getHost();
htokens=host.split("\\.|\\-|\\_|\\~|[0-9]");

for(i=0;i<htokens.length;i++)
{
if(!htokens[i].isEmpty())
{
for(j=0;j<t.length;j++)
{
if(htokens[i].equals(t[j].name))
{ t[j].count++; found=true; }
}
if(!found)
{
k=t.length;
t[k].name=htokens[i];
t[k].count=1;
}
}
}

System.out.println(t.length + "class tokens :");
for(i=0;i<t.length;i++)
{
System.out.println(
"name :"+t[i].name+" frequency :"+t[i].count);
}
}
br.close();
fr.close();
}
catch(Exception e)
{
System.out.println(e);
}
}
}

但是当我运行它时,它显示:变量 t 未初始化。。我应该怎么做才能纠正它?

最佳答案

Java中的数组是固定长度,所以我认为你真正想做的是使用List<Tokens>

例如

List<Tokens> t = new ArrayList<Tokens>();

t.add(new Tokens(...))

除非您事先知道您将拥有的元素数量。

关于java - Java中数组变量初始化错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2403477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com