【问题标题】:ArrayList Length [duplicate]ArrayList 长度 [重复]
【发布时间】:2016-03-16 19:27:01
【问题描述】:

我无法让数组列表长度显示在我的 for 循环中。我是编程的初学者/新手,所以我可能完全不在这里。 ArrayList 的输出显示为 0。我正在尝试将来自 jTextBox 的字符串与 arraylist 进行比较,并查看 String 是否存在于 List 中。

public static void ValidateProtocolCompatiblity(FAS_Define[] faslist, String selectedProtocol, String selectedFAS){
     for (int index=0; index < faslist.length;index++){
        if (faslist[index].getName() == selectedFAS)
            for (int j=0; j < faslist[index].getSupportedProtocol().toArray().length;j++){       
                fasProtocolList.add(faslist[index].getSupportedProtocol().toString());

            }
    }

这是我基于构造函数的原始数组列表

        FAS_Define[] fasList = new FAS_Define[10];
        fasList[0] = new FAS_Define("FAS2552", new ArrayList(Arrays.asList("iSCSI", "FCoE"))); 

        ValidateProtocolCompatiblity(fasList,protocolField, fasField);

用于概述原始数组列表的 getter/setter/constructor 类

public class FAS_Define {
private int id;
private String name;
private List<String> supportedProtocol; 

private static int numberofDevice = 0;

public FAS_Define(String cName, ArrayList<String> cSupportedProtocol){
    this.name = cName;
    this.supportedProtocol = new ArrayList<String>();

    numberofDevice++;
    id = numberofDevice;
}
public String getName(){return name;}
public void setName(String name){this.name = name;}

public List<String> getSupportedProtocol(){return supportedProtocol;}
public void setSupportedProtocol(List<String> supportedProtocol){this.supportedProtocol = supportedProtocol;}

【问题讨论】:

  • if (faslist[index].getName() == selectedFAS) 不要将字符串与== 进行比较。使用equals 方法。更多信息请访问“How do I compare strings in Java?
  • OP 有很多可以从重新打开中受益的错误。

标签: java arraylist


【解决方案1】:

代替

faslist[index].getSupportedProtocol().toArray().length

用途:

faslist[index].getSupportedProtocol().size()

无需将arrayList 转换为array。要在给定索引处获取数组列表的元素,请使用:

faslist.get(index).getSupportedProtocol().toString()

代替

faslist[index].getSupportedProtocol().toString()

【讨论】:

    猜你喜欢
    • 2014-02-09
    • 2016-03-10
    • 2014-06-14
    • 2018-11-13
    • 1970-01-01
    • 2011-06-09
    • 2014-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多