Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java(DJ)中为LinkedList编写get方法_Java_Arrays_List_Linked List_Singly Linked List - Fatal编程技术网

在Java(DJ)中为LinkedList编写get方法

在Java(DJ)中为LinkedList编写get方法,java,arrays,list,linked-list,singly-linked-list,Java,Arrays,List,Linked List,Singly Linked List,我有一个精简Java(DJ)程序,它应该执行以下操作: 所需的功能是让您的程序在用户输入自然数时输入自然数, 直到用户输入零为止。将这些数字视为存储到数组A中,第一个 输入的数字存储在[0]中,第二个数字存储在[1]中,等等。在用户输入第一个0之后, 您的程序将再输入两个自然数i和j,然后输出商和 A[i]除以A[j]时的余数。如果用户输入的i或j值超出A的界限(例如 例如,如果A的最后一个元素存储在A[5],但用户输入6作为i)的值,则程序需要 为商和余数打印0。您可以假设用户从未存储超过 一

我有一个精简Java(DJ)程序,它应该执行以下操作:

所需的功能是让您的程序在用户输入自然数时输入自然数, 直到用户输入零为止。将这些数字视为存储到数组A中,第一个 输入的数字存储在[0]中,第二个数字存储在[1]中,等等。在用户输入第一个0之后, 您的程序将再输入两个自然数i和j,然后输出商和 A[i]除以A[j]时的余数。如果用户输入的i或j值超出A的界限(例如 例如,如果A的最后一个元素存储在A[5],但用户输入6作为i)的值,则程序需要 为商和余数打印0。您可以假设用户从未存储超过 一万个数字变成一个数字

所需行为的示例:

Enter a natural number: 7
Enter a natural number: 2
Enter a natural number: 0
Enter a natural number: 0
Enter a natural number: 1
3 1
(Here A[0]=7 and A[1]=2, so A[0]/A[1] has quotient 3 and remainder 1)
我的问题是编码一个get方法来获取索引中的元素。LinkedList预先设置了,因此它的顺序是相反的,我不知道如何为它编写一个方法。我需要使用while循环

代码:

类LinkedList扩展对象{
nat数据;
LinkedList下一步;
nat setData(nat newData){
数据=新数据;
}
nat前置(nat新数据){
链接列表;
currList=新链接列表();
currList.data=数据;
currList.next=next;
数据=新数据;
下一步=当前列表;
0;
}
//问题方法
nat get(nat索引){
链接列表温度;
temp=新链接列表();
while(temp!=null&&index>=0){
温度=下一个温度;
}
温度数据;
}
}
//方法进行除法,因为我们不能这样做
nat划分(nat a、nat b)
{
如果(b==0){0;}
如果(a-b==0){1;}
如果(a
如果您发现代码有任何问题,请在评论中指出。我会很感激的(尽管这不是我想要的)。Java就像Java一样,只需将
int
替换为
nat
,它也没有那么多的功能,所以如果我在做一些非传统的事情,这可能就是原因


只是希望这个问题仍然可以回答,即使你并不完全了解DJ。我甚至会接受Java的答案,我会把它翻译成DJ。他们很相似。这里有一个web文档对DJ做了更多的解释:

我阅读了您向我们展示的需求,它们不要求您使用列表类,更不用说从头实现链表类了。“您可以假设用户在一个数组中存储的数字从未超过10000个。”-这意味着您可以(IMO应该)只使用10000个元素的固定大小数组。@StephenC DJ中没有数组。我们必须从头开始使用LinkedList类,它甚至是为我们提供的。那么,实现
get
方法有什么问题?对于一个链表,你只需要跟随链表的“下一个”指针“索引”时间。好吧,因为它被预先设置好了,所以它是向后的。所以我做了total-index来逆转它。我最近将代码更新到目前为止的版本。我不确定@stephency是否正确/实现正确如果你(真的)想反向存储链接列表,你需要跟踪当前列表长度(在一个变量中!),然后按照链接
length-index
的次数进行操作。最好实现
append
并使用它。我对您向我们展示的需求的理解是,它们不要求您使用列表类,更不用说从头实现链表类了。“您可以假设用户在一个数组中存储的数字从未超过10000个。”-这意味着您可以(IMO应该)只使用10000个元素的固定大小数组。@StephenC DJ中没有数组。我们必须从头开始使用LinkedList类,它甚至是为我们提供的。那么,实现
get
方法有什么问题?对于一个链表,你只需要跟随链表的“下一个”指针“索引”时间。好吧,因为它被预先设置好了,所以它是向后的。所以我做了total-index来逆转它。我最近将代码更新到目前为止的版本。我不确定@stephency是否正确/实现正确如果你(真的)想反向存储链接列表,你需要跟踪当前列表长度(在一个变量中!),然后按照链接
length-index
的次数进行操作。最好实现
append
并使用它。