下面是一个链表的简单实现。我刚刚添加了相关代码。首先,我向列表中添加一些值,10,990和10000。当我搜索相同的值时,对于key=10,我得到true,但是对于key=990和key=10000得到false,尽管它应该是true。另外,如果我将第二个值从990更改为99,并搜索key=99,这一次我得到的是true。
我不确定是否使用泛型类型。我想我在那里做错了什么。因为如果我用int替换泛型类型,我就得到了正确的行为。请建议。
public class LinkedListTest {
public static void main(String[] args) {
LinkedList<Integer> num = new LinkedList<Integer>();
num.add(10);
num.add(990);
num.add(10000);
int key = 10;
System.out.println("Key " + key + " found ?" + num.findValue(key));
key = 990; //also checked for Integer key = 990
System.out.println("Key " + key + " found ?" + num.findValue(key));
key = 10000;
System.out.println("Key " + key + " found ?" + num.findValue(key));
}
}
class LinkedList<T>{
private Node<T> first;
private class Node<T>{
private T data;
private Node<T> next;
public Node(T data){
this.data = data;
this.next = next;
}
}
public void add(T data){
Node<T> nn = new Node<T>(data);
nn.next = first;
first = nn;
}
public boolean findValue(T key){
Node current = first;
while(current != null){
if(current.data == key)
return true;
else
current = current.next;
}
return false;
}
}
==
运算符比较两个对象引用,查看它们是否引用同一个对象。使用integer
值,JVM将从-128
到127
缓存integer
。
从integer.valueof
JavaDocs中:
此方法将始终缓存在-128到127(含)范围内的值,并可能缓存此范围之外的其他值。
if(current.data != null && current.data.equals(key))
ValueError:序列的真值不明确。使用a.empty、a.bool()、a.item()、a.any()或a.all()。 为什么会这样?因为我指定了在不满足任何条件的情况下分配给列的值。
还不起作用。所以我放弃链接,我只是编码:
尽管有值,但我不能得到一个用户的值的和时间。 即使用户17有工作时间值,我也会在sumTW列中得到该用户的NULL值。我该怎么解决? 这就是我的查询看起来的样子: 下面是表格代码: (这个表和原来的不一样,原来的有外键。我去掉它们只是为了能够再现同样的问题,同样的问题被报告了)。
当用户键入以下内容的答案时:system.out.println(“键入数字”); 它不会继续到我的代码的下一部分。
问题内容: 我正在尝试编写关于弹跳球的代码,但是我仍然沉迷于如何 使弹跳球。该代码似乎是正确的,日食没有错误消息 ,但是球还是没有动。任何帮助/提示表示赞赏。 这是我的代码: 问题答案: 基本上,什么都没有移动。 每次滴答作响,您要做的就是重新粉刷。 您需要将移动逻辑移至已注册的方法Timer 更像… 这样,每次Timer打勾时,您都在相应地更新球的位置… 更新了工作示例 我做了两个更改。我将设置
我正在构建一个鼓机,我已经存储了一个带有kick声音的示例头文件,它的值介于0和170之间。我想通过SPI将其发送到10位MCP4811 DAC,然后将其输出到3.5毫米音频插孔。 我有我的MISO,MOSI,SCK和复位引脚连接到我的USB编程器以及DAC。 这里是存储在"samples. h"中的音频文件的片段。 因此,它是2221位的样本。我想用SPI发送到DAC,频率=22 kHz。 我使