-4

这是我的 Java 代码的一部分,IDE 是 Eclipse。'Lines' 是一个字符串数组。

//build anchor inner text
int Count = Lines.length;
String Text = ""; //<----------Eclipse shows warning here
for (int Index=0; Index<Count; Index++) {
  Text += Lines[Index];
  if (Index<Count-1)
    Text += "<br/>";
}

'Text' 变量在 'for' 循环外声明,但在. Eclispe在变量“Text”的声明行向我显示了这个警告:“未使用局部变量 Text 的值”。

怎么会这样?它在“for”循环中使用。

4

5 回答 5

6

您正在设置变量值,但其值未在您的代码中使用。该警告是无害的,并且在您使用变量值时很可能会消失。

于 2012-08-07T07:44:13.810 回答
4

Eclipse 很可能会抱怨,因为您将东西扔到Text变量中而没有对它做任何事情。例如,执行诸如System.Console.WriteLine(Text);(假设Text是一个字符串)之类的操作应该删除警告。

于 2012-08-07T07:45:04.110 回答
2

您正在写入变量Text,但没有从中读取 - 实际上意味着您正在执行不需要的计算。

一旦您返回文本或将其显示到控制台等,它将删除警告。

于 2012-08-07T07:45:39.623 回答
2

您正在为您的变量分配一个空字符串Text,然后不确定读取它(至少在显示的代码段中)。什么时候Count == 0,甚至什么时候Count < 1,循环体都不会被执行,所以Text不会被使用。不过,我想你以后会做点什么Text吗?

于 2012-08-07T07:55:45.293 回答
0
  • 当你连接使用StringBuilder()
  • 颠倒约定很有趣,但很危险(与类名冲突),忘记了这个习惯用于专业用途或实际工作。
  • Eclipse 对你很友好:在你Test做大之后你忘记了吗?真的,你什么都不做,你什么都没做。'null' 的时间消耗。
  • 您可以public static Test删除警告,并从所有其他程序中读取它。
于 2012-08-07T08:31:13.533 回答