小编Som*_*ers的帖子

Java,泛型和迭代器

我试图理解为什么我收到此错误:

- 这是错误 -

File: ...\HashTable.java [line: 103] Error: The return type is incompatible with HashTableInterface<Key,Value>.iterators()

该接口包含一个内部类:

public class Entry<Key, Value>{...}

和LinkedList类似于java API但它包含一个迭代器内部类,但在测试更简单的东西时:

- 这是工作代码,至少在drjava的交互窗格中 -

LinkedList<String> list = new LinkedList<String>();
Iterator<String> test = list.iterator();
Run Code Online (Sandbox Code Playgroud)

但我无法在我的HashTable类中编译此方法:

- 这是我无法工作的代码 -

public Iterator<Entry<Key, Value>> iterator(){
LinkedList<Entry<Key, Value>> iter = new LinkedList<Entry<Key, Value>>();
return iter.iterator();
}
Run Code Online (Sandbox Code Playgroud)

我认为它简单,它似乎并不太复杂,但任何输入都将非常感激.

**你是对的,它应该是list.iterator();

编辑

- 好吧,这是界面 -

import nhUtilities.containers2.*;

interface HashTableInterface<Key, Value> {

    public boolean isEmpty();

    public Value get(Key key);

    public void add(Key key, Value value);

    public void …
Run Code Online (Sandbox Code Playgroud)

java generics

0
推荐指数
1
解决办法
8236
查看次数

Java数组的LinkedLists

为什么是

LinkedList<String>[] list = new LinkedList[32];

StaticError:Bad types in assignment:from raw LinkedList[] to LinkedList<String>[]
Run Code Online (Sandbox Code Playgroud)

LinkedList<String>[] list= (LinkedList<String>[]) new LinkedList[32];
StaticError: Bad types in cast: from raw LinkedList[] to LinkedList<String>[]
Run Code Online (Sandbox Code Playgroud)

编译,但给我关于原始类型的运行时错误?

我需要创建一个LinkedLists数组(基本上是一个哈希表...而且它是功课,所以我不能偏离它).我计划通过使用单独的链接来处理冲突,这只是在LinkedList中使用连续元素填充数组中的重复条目.任何想法将不胜感激.

java generics

0
推荐指数
1
解决办法
168
查看次数

递归和乘法

这可能吗?这是我的作业,我的老师显然相信它,但在我看来,不可能在短乘法之外使用加法或乘法.

写入(并提供测试器)递归算法:

int multiply(int x,int y)

将两个正整数相乘而不使用*运算符.不要只为自己添加x次!

(提示:编写一个递归方法,将整数乘以0的范围内的值.10.然后编写第二个递归方法,实现您学到的乘法算法,以便在小学中乘以多位数.)

我的问题是,一旦你分解任何多位数并开始将它们加在一起你必须使用大于10的数字乘法,即22*6是2*6 + 20*6 ...所以我完全错过了什么?

编辑 我想我应该添加这是我的代码,

public int mult(int x, int y){
return x == 0 ? 0 : (mult(x-1, y) + y);
}
Run Code Online (Sandbox Code Playgroud)

这是完美的,但据我理解的说明,这是打破不只是添加x自己y次.我个人认为不是,但我的老师不是很清楚,我想知道是否还有其他一些我没有想过的方法,对不起这种困惑.

java recursion multiplication

0
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×3

generics ×2

multiplication ×1

recursion ×1