我的任务是创建一个字典,其字符串是在字符串中找到的元素,其值计算每个值的出现次数.
防爆.
"abracadabra" ? {'r': 2, 'd': 1, 'c': 1, 'b': 2, 'a': 5}
Run Code Online (Sandbox Code Playgroud)
我在这里有for循环逻辑:
xs = "hshhsf"
xsUnique = "".join(set(xs))
occurrences = []
freq = []
counter = 0
for i in range(len(xsUnique)):
for x in range(len(xs)):
if xsUnique[i] == xs[x]:
occurrences.append(xs[x])
counter += 1
freq.append(counter)
freq.append(xsUnique[i])
counter = 0
Run Code Online (Sandbox Code Playgroud)
这正是我想要它做的,除了列表而不是字典.我怎样才能使它counter
成为一个价值,并xsUnique[i]
成为新词典中的关键?
我正在创建一个由数组支持的泛型类型堆栈。当我尝试创建泛型类型数组时,Java 不允许我这样做。有人告诉我,我必须创建一个 Object 类型的数组并将其转换为泛型类型。我已将我的 Object 数组强制转换为 type ,但是如何处理 Java 不断给我的 Unchecked Type 错误?
public class AStack<T>{
// Create a stack with the default capacity 10. The stack expands
// its internal array when the number of elements pushed() into it
// would exceed the internal capacity.
Object arr[];
int top=-1;
public AStack(){
int defSize=10;
arr = (T[])new Object [defSize];
}
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止的地方。
更新:我正在创建一个 Object 数组,然后在方法结束时将返回类型转换为 T 类型。