这基本上就是我所拥有的,一切正常,但由于某种原因,我无法将字符输入到数组中。
如果您能向我解释为什么它不起作用,我们将不胜感激。 这样做的目的是将一系列字符输入到数组中,并计算其中存在的''(间隙)数。
粗体部分是我目前遇到问题的地方。
>>> pkt = Ether() / Dot1Q() / IP() / TCP()
>>> payload = pkt.getlayer(1).payload
>>> payload
<IP frag=0 proto=tcp |<TCP |>>
>>> pkt.getlayer(1).remove_payload()
>>> pkt
<Ether type=n_802_1Q |<Dot1Q |>>
>>> newPkt = pkt / Dot1Q() / payload
>>> newPkt
<Ether type=n_802_1Q |<Dot1Q type=n_802_1Q |<Dot1Q type=IPv4 |<IP frag=0 proto=tcp |<TCP |>>>>>
>>>
答案 0 :(得分:0)
问题是toCharArray
会返回一个数组,而您无法将数组放入数组中。试试这个:
Char[] test = a.next().toCharArray();
答案 1 :(得分:0)
当您强制运行代码时,会出现这样的错误堆栈
线程“main”中的异常java.lang.RuntimeException:Uncompilable 源代码 - 不兼容的类型:char []无法转换为char 在test4c.Test4c.main(Test4c.java:26)Java结果:1
很明显为什么你会收到这样的消息?
您尝试在char[] test
索引中插入一个char数组,接受char而不是char数组
这就是你所拥有的:
for(int i = 0; i<size; i++){
test[i] = a.next().toCharArray();
}
根据您所拥有的内容,我认为您只想将a.next()
转换为已定义的test
字符数组
char[] test = new char[size];
你可以改变你拥有的东西
test = a.next().toCharArray();