Tag: list

将表getData()转换为字符串列表

我已经填充了swt表,它显示它没问题,但现在我想从swt Table获取数据 有没有解决方案从表中获取数据到数组或列表?

将“路径”从2Darrays网格存储到列表中

在我用JLabel制作的2D网格作为单元格时,我让单元格的邻居形成一个“路径”,然后在该路径之后绘制一个多边形,其中单元格的中心为点。 我使用一个分层窗格(JPanel)将两个面板一个放在另一个上面以便能够绘制多边形和一个GridBagLayout以允许将两个组件一个放在另一个上面。 一切都按预期工作。 问题是,每当我点击一个空单元格时,前一条路径就会被清除,同时也会清除多边形。 但是不清除单元格内容。 现在,我希望将已绘制的路径/多边形保存在列表中,以便可以再次重新绘制它们。 我希望有一个类似“历史”的东西,它将包含所有找到的路径。 有关如何实现这一点的任何想法? 在路径之后绘制的多边形由位于该路径中包含的单元格中心的点(JLabel)形成: Point[] polygon = new Point[path.size()]; //calculate points to construct lines along the path for(int[] address : path) { //get cell location (row / col) int row = address[0]; int col = address[1]; //get label in that location JLabel label = grid[row][col]; //add center of label as […]

我应该使用Iterator还是forloop进行迭代?

我不喜欢不得不调用hasNext()和next()的想法,并且看到我如何需要一个循环来调用它们,我真的没有看到使用在列表中给我们的迭代器和地图。 是否只需要从列表中提取一个? 或者,如果您从列表中选择一个项目,并且必须在不可测量的时间内执行此操作? 我在Google或Stack上找不到这个,请帮帮我。 我不是专门讨论增强的for循环(for-each循环)。 我也理解foreach循环在性能方面表现优异,但这更像是“为什么存在”的问题 编辑:已经实现我只谈论集合而不是arraysaswel。 Foreach循环在这种情况下没有限制。

Spring批处理从文件中检索对象列表并在输出文件中返回单行

我使用spring batch读取CSV文件作为输入,我有2个CSV文件作为输出。 第一个文件包含大约100行。 输入文件包含5个colones id,typeProduct和price。 我只有两种类型的产品 我遍历所有这些行,我写了两个输出文件。 对于这两个文件,包含产品类型的单行和具有相同类型的所有这些产品的价格总和。 所以我需要在写入输出文件之前。 我希望得到一个列表中的所有行来创建条件并向我的对象添加一个新属性,例如结果if sum> 5000将取得好的值,其他将不会很好。例如。 并将它们显示在文件中存在的输出行中 这是我的产品 public class Product { private Long idt; private String typeProduct; private Double price; private String result; } 这是我工作的定义 这是分类器方法 public class ExampleWriterRouteImpl { @Classifier public String classify(Product batch){ if(batch.getTypeProduct().equals(“Telephone”)) return “tel”; else if(batch.getTypeProduct()).equals(“PC”))) return “pc”; return null; } } 因此,我需要对所有具有相同类型的产品求和,并且只有一个单独的输出行,其中包含产品类型以及每个输出文件的价格和结果的总和。 我不知道如何检索这些对象的列表,并在最后只检索一行。 […]

List和List 之间的区别

我已经读过很多关于此的内容了,我知道: List listOfObject = new ArrayList(); // (0) //can only work for TYPE == Object. //if TYPE extends Object (and thus objects of type TYPE are Objects), //this is not the same with Lists: List is not a List 现在我已经读过以下内容: List undefinedList = new ArrayList(); // (1) //works for ANY type (except for primitives) 和 […]

关于java列表的问题删除

List的方法public boolean remove(Object o)从List删除一个对象,但不会移动后面的元素。只能使对象值为空。 恕我直言,这是一个不直观的设计选择,因为删除前后列表的大小保持不变。 是否有一种优雅的方法来获取一个包含元素的列表? 谢谢

在Java中检查对象的NULL的最佳方法

我有一个解决方案来检查从对象中提取的NULL值,但我觉得可能有比我在这里做的更好的方法。 所以请建议我使用代码片段的最佳方法 🙂 我将把我的xml内容传递给unmarshalling方法然后将unmarshalledValues传递给null check方法(即ValidateInputFiled) Contents unmarshalledValues = unmarshalingContent( xml ); inputCheck = ValidateInputField( unmarshalledValues ); 我有一个POJO用于​​我的XML元素,如下所述, @XmlRootElement( name = “contents” ) public class Contents { @XmlElement String A; @XmlElement String B; @XmlElement String C; @XmlAttribute String D; public String getA() { return A; } public String getB() { return B; } public String getC() […]

在包含Streams的2D列表的修改列表中包含未修改列表中的元素

我问这个问题是关于对1D列表做同样的事情,认为将答案应用于2D列表会很容易,但事实并非如此。 基于Holger的答案我的代码,我提出了这个解决方案: //list is of type ArrayList<List> list.stream() .map(l -> Stream.concat( l.subList(0, l.size() – 1).stream().map(i -> i – 2), Stream.of(l.get(l.size() – 1)).collect(Collectors.toList()) )) .collect(Collectors.toList()); 我得到编译时错误Cannot infer type argument(s) for map(Function) ,但是,当我尝试这个时。 如何在2D列表上执行此function? 一些示例输入和输出: [[1, 2, 3, 4], [5, 6, 7, 8]]应输出[[-1, 0, 1, 4], [3, 4, 5, 8]]

在Java 8中懒惰地返回第一个非空列表

我有N个列表从存储库返回数据。 我想返回这三个列表中的第一个非空(每个列表执行不同的SQL来获取数据)。 问题是我想懒得这样做,所以如果我已经找到了可接受的结果,我就不需要在数据库上执行SQL。 我的代码是(修改过的) @Override public List dataService(Data data) { return firstNonEmptyList(repository.getDataWayOne(data.getParameter()), repository.getDataWayTwo(data.getParameter()), repository.getDataWayThree(data.getParameter().getAcessoryParameter()) Collections.singletonList(repository.getDefaultData(data.getParameter())); } @SafeVarargs private final List firstNonEmptyList(List… lists) { for (List list : lists) { if (!list.isEmpty()) { return list; } } return null; } 这有效,但它不是懒惰的。 有任何想法吗?

从表单数据填充struts2中的List

我觉得这应该是非常明显的,但到目前为止我还没有找到答案。 我想要一个字符串列表(或一个字符串数组,我真的不在乎)由Struts2中的表单数据填充。 我已经看过几个如何用bean做索引属性的例子,但在对象中包装一个字符串似乎相当愚蠢。 所以我有类似的东西 public class Controller extends ActionSupport { private List strings = new ArrayList(); public Controller() { strings.add(“1”); strings.add(“2”); strings.add(“3”); strings.add(“4”); strings.add(“5”); } public String execute() throws Exception { return ActionSupport.SUCCESS; } public List getStrings() { return strings; } public void setStrings(List s) { strings = s; } } … 表单字段将填充其初始值(例如,1,2等),但结果未正确回发。 永远不会调用setStrings ,但是将值设置为空字符串。 […]