你好我想为ArrayList类做一个自定义的方法。ArrayList的自定义方法
因此可以说我做了一个新的ArrayList。
ArrayList<String> list = new ArrayList<String>
我想做一个方法,我可以在列表中调用。 事情是这样的:
list.myMethod();
我想用我的方法解决的是让你可以通过对象名称的ArrayList内的对象,而不是指数。
所以基本上我想打一个方法返回如下:
list.get(list.indexOf(str));
概括起来:
ArrayList<String> list= new ArrayList<>();
String str = "asd";
String str2 = "zxc";
list.add(str2);
list.add(str);
System.out.println(list.get(0));
System.out.println(list.get(list.indexOf(str)));
会打印: “ASD”, “ASD”。
所以,而不是写作:list.get(list.indexOf(Object))
我想成为能够写list.myMethod(Object)
并得到相同的结果。我希望你能理解我的问题。我知道这可能是一个愚蠢的解决方案,我可以使用一个地图。但是这仅仅是为了学习的目的,没有我会用。
创建扩展'ArrayList'自己的类,并使用它,或者你总是可以创建一个静态方法会做同样的事情,比如'public static Object find(Object o,List l){return l.get(l.indexOf(o));}',这当然有点凌乱 – AxelH
我不明白你为什么想要这样做。假设你有一个清单:'{“猫”,“狗”,“鼠标”}'。你想能够调用'list.myMethod(“cat”);'得到一个包含“猫”的字符串?你已经有一个包含“猫”的字符串!你将它传递给了方法。 – Michael
“不要用这个例子来理解” - 那么这个例子的重点是什么?这个问题在字符串的上下文中使用是没有意义的。此外,我从未听过任何使用术语“对象名称”之前。这不是由我来推断问题的细节:这是OP的责任,以确保我不必。 – Michael