我有一个ArrayList,我正在使用迭代器来运行它.我需要找出下一个类型的对象:
Iterator vehicleIterator = vehicleArrayList.iterator();
while(vehicleIterator.hasNext())
{
//How do I find the type of object in the arraylist at this point
// for example, is it a car, bus etc...
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我认为链接列表在添加元素时应该比arraylist更快?我刚刚测试了添加,排序和搜索元素所需的时间(arraylist vs linkedlist vs hashset).我只是使用java.util类进行arraylist和linkedlist ...使用每个类可用的add(object)方法.
arraylist out在填写列表时执行链表...并在列表的线性搜索中执行.
这是正确的吗?我在实施中做错了吗?
***************编辑*****************
我只是想确保我正确使用这些东西.这就是我正在做的事情:
public class LinkedListTest {
private List<String> Names;
public LinkedListTest(){
Names = new LinkedList<String>();
}
Run Code Online (Sandbox Code Playgroud)
然后我只使用链表列表方法,即"Names.add(strings)".当我测试arraylists时,它几乎相同:
public class ArrayListTest {
private List<String> Names;
public ArrayListTest(){
Names = new ArrayList<String>();
}
Run Code Online (Sandbox Code Playgroud)
我做得对吗?
我如何提取字符串[]或arraylist中的所有元素,并将所有单词与它们之间的适当格式(具有单个空格)组合并存储在数组中.
String[] a = {"Java", "is", "cool"};
Run Code Online (Sandbox Code Playgroud)
输出:Java很酷.
很多人都说ArrayList.removeAll大尺寸阵列真的很慢.
该文章提供了两种优化的解决方案到ArrayList.removeAll速度,但需要在类中实现它们,并且不能在外部使用的修复.
有没有办法应用这种修复,而不是复制ArrayList源代码并使用我自己的版本?
编辑:我想我应该添加我对此的需求,因为如果没有ArrayList.removeAll,可能有办法做我想要的.
我有两个70,000 longs每个列表.它们几乎完全相同,但是一个列表中有第二个列表没有的更多数字,我想找到它们.我知道找到它们的唯一方法就是first.removeAll(second)找到差异.还有另外一种方法吗?
我刚刚读了一些关于和的信息.从我所能理解的是与过时相比已经过时了.但是同步而不是.VectorArrayListVectorArrayListVectorArrayList
但是,这是什么意思?当我们说a Vector是同步的时候意味着什么?什么时候有用?
我的课程中有两个arraylists,我想将它发送到我的JSP,然后在select标签中迭代arraylist中的元素.
这是我的班级:
package accessData;
import java.util.ArrayList;
public class ConnectingDatabase
{
ArrayList<String> food=new ArrayList<String>();
food.add("mango");
food.add("apple");
food.add("grapes");
ArrayList<String> food_Code=new ArrayList<String>();
food.add("man");
food.add("app");
food.add("gra");
}
Run Code Online (Sandbox Code Playgroud)
我想将food_Code作为select标签中的选项和food作为JSP中Select元件中的值进行迭代; 我的JSP是:
<select id="food" name="fooditems">
// Don't know how to iterate
</select>
Run Code Online (Sandbox Code Playgroud)
任何一段代码都非常受欢迎.提前致谢 :)
public class ArrayListTest {
public static void main(String[] args) {
ArrayList al=new ArrayList();
al.add("");
al.add("name");
al.add("");
al.add("");
al.add(4, "asd");
System.out.println(al);
}
}
Run Code Online (Sandbox Code Playgroud)
o/p [,name ,,, asd]欲O/p [name,asd]
我的书中有一个问题说(没有答案):
假设我们有一个使用标头声明的类Beta:
Run Code Online (Sandbox Code Playgroud)class Beta extends Alpha所以Beta是Alpha的子类,而在Alpha类中有一个带头的方法:
Run Code Online (Sandbox Code Playgroud)public int value(Gamma gam) throws ValueException编写一个名为addValues静态方法,该方法采用了一个对象,其可以是式的
ArrayList<Alpha>或ArrayList<Beta>,并且还类型的对象Gamma.对方法addValues的调用必须返回通过在ArrayList参数中的每个对象上添加值调用的结果而获得的总和,其中Gamma参数作为每次值调用的参数.在计算总和时,应忽略任何导致抛出ValueException类型异常的值调用.
我的尝试:
public static int addValues(ArrayList<? extends Alpha> arr, Gamma gam) {
int sum = 0;
for (int i = 0; i < arr.size(); i++) {
try {
sum += arr.get(i) + gam;
} catch (Exception e) {
i++;
}
}
return sum;
}
Run Code Online (Sandbox Code Playgroud)
虽然我知道对于初学者来说这条线sum += arr.get(i) + gam会给我一个错误,因为它们不是直接int的,可以添加.这本书没有提供关于这个问题的更多信息,所以我在这里写的是问题所需的一切.
如果值为null,是否有任何简单的方法可以替换List或Collection中的值?
我们总是可以做list.stream().filter(Objects::nonNull);,也许可以将0添加回列表.
但我正在寻找的是像API一样的API list.replaceIf(Predicate<>).
arraylist ×10
java ×10
arrays ×1
class ×1
collections ×1
iterator ×1
java-8 ×1
jsp ×1
linked-list ×1
optimization ×1
removeall ×1
string ×1
vector ×1