Java不安全操作

use*_*902 3 java maps unsafe vector

编译一小段java代码时,我得到了一个不安全操作的编译说明.我基本上只是希望有一个如何改变我的数据结构以保证其安全的概念.

这个概念:我需要根据它们的长度将输入的字符串组织成桶,这可能是任意的(尽管少于80个字符).

代码:

Map<Integer, List> buckets = new HashMap<Integer, List>();
            if(!buckets.containsKey(length))
            {
                buckets.put(length,new Vector<wordValues>());
            }
            //Now add the temp to the bucket
            buckets.get(length).add(new wordValues(temp));
Run Code Online (Sandbox Code Playgroud)

然后我将字符串添加到与其大小相对应的列表中.

什么是更好的方法来做到这一点?

MBy*_*ByD 10

你混合raw和Generics List,试试:

Map<Integer, List<wordValues>> buckets = new HashMap<Integer, List<wordValues>>();
Run Code Online (Sandbox Code Playgroud)

此外,通常类名以大写字母开头,例如WordValues.