Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.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
不使用泛型的ArrayList java程序_Java_Algorithm_Arraylist - Fatal编程技术网

不使用泛型的ArrayList java程序

不使用泛型的ArrayList java程序,java,algorithm,arraylist,Java,Algorithm,Arraylist,我被指派在不使用泛型的情况下实现ArrayList和LinkedList。问题在于insertnode()方法。虽然我尝试使用扫描器从命令行读取,但该方法返回时不会等待 import static java.lang.System.out; import java.util.Scanner; class Arraylist { public static final int LIST_SIZE=30; static Scanner input = new Scanner(System.in);

我被指派在不使用泛型的情况下实现ArrayList和LinkedList。问题在于insertnode()方法。虽然我尝试使用扫描器从命令行读取,但该方法返回时不会等待

import static java.lang.System.out;
import java.util.Scanner;
class Arraylist
{
public static final int LIST_SIZE=30;
static Scanner input = new Scanner(System.in);
static Object list[];
static int top = -1;
static int typeoflist; 
public static void displaymenu()
{
    int choice;
    do{
        out.print("\n Basic operations on a linked list:");
        out.print("\n 1. Create list  \n 2. Insert node \n 3. Delete node  \n 4. Modify node \n 5. Search value \n 6. Print list\n Else. Exit \n Choice:");
        choice = input.nextInt();
        switch(choice)
        {
            case 1:
                list = createlist();
                break;
            case 2:
                insertnode();
                break;
            case 3:
                //deletenode();
                break;
            case 4:
                //modifynode();
                break;
            case 5:
                //searchnode();
                break;
            case 6:
                printlist();
                break;
            default:
                return;
        }       
    }while(true);
}   
public static Object[] createlist()
{
    int typeoflist;
    out.println("Enter your choice of list datatype: \n 1. int \n 2. float \n 3. char \n 4. String \n 5. UserDefined \n Choice:");
    typeoflist = input.nextInt();
    switch(typeoflist)
    {
        case 1:
            list = new Integer[LIST_SIZE];
            break;
        case 2:
            list = new Float[LIST_SIZE];
            break;
        case 3:
            list = new Character[LIST_SIZE];
            break;
        case 4:
            list = new String[LIST_SIZE];
            break;
    }
    return (Object[])list; 
}
public static void insertnode()
{
    Object o;
    top++;
    out.println("Enter the value to insert:");
    switch(typeoflist)
    {
        case 1:
            o = (Integer)input.nextInt();
            list[top] = o;
            break;
        case 2:
            o = (Float)input.nextFloat();
            list[top] = o;
            break;
        case 3:
            //o = (Character)input.next();  //
            //list[top] = o;
            break;
        case 4:
            o = (String)input.next();
            list[top] = o;
            break;
    }   
}   
public static void printlist()  
{
    for(int i =0; i<top; i++)
    {
        out.println(list[i]);
    }
}   
public static void main(String[] args)
{
    displaymenu();
}
}
导入静态java.lang.System.out;
导入java.util.Scanner;
类数组列表
{
公共静态最终整数列表\u大小=30;
静态扫描仪输入=新扫描仪(System.in);
静态对象列表[];
静态int-top=-1;
静态int类型列表;
公共静态无效显示菜单()
{
智力选择;
做{
out.print(“\n链接列表上的基本操作:”);
out.print(“\n 1.创建列表\n 2.插入节点\n 3.删除节点\n 4.修改节点\n 5.搜索值\n 6.打印列表\n其他.退出\n选项:”);
choice=input.nextInt();
开关(选择)
{
案例1:
list=createlist();
打破
案例2:
insertnode();
打破
案例3:
//deletenode();
打破
案例4:
//modifynode();
打破
案例5:
//searchnode();
打破
案例6:
打印列表();
打破
违约:
返回;
}       
}虽然(正确);
}   
公共静态对象[]createlist()
{
整型列表;
out.println(“输入您对列表数据类型的选择:\n 1.int\n 2.float\n 3.char\n 4.String\n 5.UserDefined\n choice:”);
typeoflist=input.nextInt();
开关(类型列表)
{
案例1:
列表=新整数[列表大小];
打破
案例2:
列表=新浮动[列表大小];
打破
案例3:
列表=新字符[列表大小];
打破
案例4:
列表=新字符串[列表大小];
打破
}
返回(对象[])列表;
}
公共静态void insertnode()
{
对象o;
top++;
out.println(“输入要插入的值:”);
开关(类型列表)
{
案例1:
o=(整数)input.nextInt();
列表[top]=o;
打破
案例2:
o=(Float)input.nextFloat();
列表[top]=o;
打破
案例3:
//o=(字符)input.next()//
//列表[top]=o;
打破
案例4:
o=(字符串)input.next();
列表[top]=o;
打破
}   
}   
公共静态void打印列表()
{

对于(int i=0;i提示:
createList()
中的
typeoflist
正在隐藏静态成员变量。

现在我需要对LinkedList进行同样的尝试。所有这些强制转换都会让我变得复杂!!!