子类化构建器模式与Java中的扭曲

我想为抽象类创建一个抽象的构建器(虽然它不需要是抽象的),抽象类的每个子类都可以有自己的子类Builder。 我还希望每个字段/属性都填写AKA强制。 所以我使用带有扭曲的Builder Patter( https://blog.jayway.com/2012/02/07/builder-pattern-with-a-twist/ )。 我遇到了一个问题,这个问题在我之前提到的这个问题中得到了解决: 通用父对象不能作为没有强制转换的子项返回但是现在我无法创建多个具体/子类构建器。 最后我想实例化像这样的对象: ConcreteBuilderA.getBuilder().setValue(Object value).setConcreteValue(int num).build() 其中setValue()属于AbstractBuilder,其他属于concreteBuilder。 我最好的镜头是(大大简化和抽象): /** * @param the type of builded object it should return. * @param the type of the builder subclass. * @param the type of the linking interface. */ public abstract class AbstractBuilder implements ValueSetter { protected B buildable; @Override public L […]

java – 按字母顺序排列(列表)

可能重复: 按字母排序列表 如何按字母顺序存储输入,我将名称输入到arraylist中: persons.add(person); 怎么做?

不同列表视图项的不同选择颜色

我有以下要求: 不同的列表视图项目的不同颜色 颜色在代码中动态指定 只有在按下/选择列表视图项时才应显示颜色 列表视图项的颜色不应永久更改 无论出于何种原因,似乎没有像我想象的那样直截了当。 唯一能够朝着正确方向发展的解决方案是: https : //stackoverflow.com/a/16978159/658718 需要注意的是,这不会更改选择颜色,但会永久更改背景颜色,如果向下滚动,它已经更改了列表视图项的背景颜色。 我该如何处理?

从数据库中显示java中的时间戳值

数据库中的日期值是2011-03-19 18:49:04 Timestamp date; ResultSet rs=smt.executeQuery(“select * from posttopic where name='”+logn+”‘”); while(rs.next()){ name=rs.getString(1); title=rs.getString(2); subject=rs.getString(3); message=rs.getString(4); date=rs.getTimestamp(5); System.out.print(date); } 上述函数返回的日期值是2011-03-19 18:49:04.0。 为什么它在最后附加.0?如何删除它?

如何在Java中实现复合模式?

我想在Java中实现一个复合模式,以映射软件开发组织。 所以,我们假设有多个项目经理和多个开发人员。 每个开发人员只分配给一个项目经理,每个开发人员都能够使用各种编程语言进行编码。 项目经理带领开发人员并确切地知道他们的工作量。 我不是百分百肯定这个设计模式,但我认为这是这个场景的完美用例,不是吗? 结果应如下: 我想查询项目经理,检查所有能够使用特定编程语言编写代码的开发人员的工作量,例如Java 。 这是我到目前为止: Employee.java: public class Employee { private String name = null; public Employee() { name = “Noob”; } public String getName() { return name; } public void setName(String name) { this.name = name; } } ProgrammingLanguages.java: public enum ProgrammingLanguages { JAVA, JAVASCRIPT, C, PHP, SWIFT, PYTHON } […]

RMI连接被拒绝

我想要获得rmi连接。 我遇到了很多安全问题,但一直无法找到解决这一问题的方法。 我执行我的jar文件: java -Djava.security.policy=java.security.AllPermission -jar “myjarfile” 我用来创建它的代码是: public class server { public static void main(String args[])throws Exception { if (System.getSecurityManager() == null) System.setSecurityManager ( new RMISecurityManager() { public void checkConnect (String host, int port) {} public void checkConnect (String host, int port, Object context) {} }); try { sampleserverimpl server = new sampleserverimpl(); System.out.println(“SERVER […]

Web应用程序中的Spring线程

我正在为MMO浏览器游戏编写服务器,我需要制作一些线程。 他们将一直在运行,有一些睡眠时间。 使用像这样的弹簧线是不是一个好主意? @Component @Scope(“prototype”) public class PrintTask2 implements Runnable{ String name; public void setName(String name){ this.name = name; } @Override public void run() { System.out.println(name + ” is running”); try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(name + ” is running”); } } 将任务执行器实现为bean? 此外,线程以单例也启动,也被定义为bean。 我的做法有什么不对?

将嵌套的ArrayList转换为List Java

我有这个方法 public List<List> ConvertReportCases (ArrayList<ArrayList> stats) 它是一个接口实现,其中返回类型是List<List> 。 一般来说,如何从嵌套的ArrayList转换为Java中的List? 谢谢 编辑感谢您的建议,我可以使我的参数作为列表传递,但然后它将是错误的,因为调用者必须将它作为List传递,而在我的特定情况下,我可以有不同的版本(多态)来检查这个问题。

Java 8 Streams:如何调用Collection.stream()方法并检索多个聚合值的数组

我从Java 8中的Stream API开始。 这是我使用的Person对象: public class Person { private String firstName; private String lastName; private int age; public Person(String firstName, String lastName, int age) { this.firstName = firstName; this.lastName = lastName; this.age = age; } public String getFirstName() { return firstName; } public String getLastName() { return lastName; } public int getAge() { return age; […]

使用IntStream的flatMap方法打印2D数组

我有一个我想用IntStream打印的2D数组。 这是arrays, int[][] twoD = { { 1, 2 }, { 3, 4 }, { 5, 6 } }; 现在,使用嵌套循环,这可以像, for (int i = 0; i < twoD.length; i++) { for (int j = 0; j < twoD[i].length; j++) { System.out.println(twoD[i][j]); } } 但我想使用IntStream 。 我最近了解了它可以用来实现它的flatMap方法,所以我尝试了这个, IntStream.range(0, twoD.length) .flatMap(j -> IntStream.range(0, twoD[j].length)) .forEach(System.out::print); 它输出010101 。 […]