【发布时间】:2014-01-02 20:46:05
【问题描述】:
我是 Java 世界的新手,我一直试图找到这个问题的答案,但找不到。那么有人可以解释我如何从线程外部使用已经初始化的字符串。这是我想要使用的字符串是“name”的代码,但如果我将“name”设为 final,我无法为其设置值。
public class Users {
public static void GenerateNames() {
String name = "";
String str;
for (int i = 0; i <= 2; i++)
name = name + RandNames.GenerateRandomChar();
str = name;
Hashtable ht = new Hashtable();
if (ht.get(str) == null)
{
ht.put(str, name);
}
else {
}
Runnable r = new Runnable() {
public void run() {
int Anketa = (int) (1 + Math.random() * 6);
Hashtable voting = new Hashtable();
if (voting.get(name) == null)
{
}
}
};
new Thread(r).start();
}
}
还有一个问题是我把“else”留空了。我只需要它什么都不做。
【问题讨论】:
标签: java string multithreading variables