我们为什么不在使用后关闭`System.out` Stream?

我只想知道,我们通常在最后关闭流,但为什么不用System.out.close()关闭System.out PrintStream?

jackson – Json到多个参赛作品的PO​​JO

我知道如果文件User.json有 { “name” : { “first” : “Joe”, “last” : “Sixpack” }, “gender” : “MALE”, “verified” : false, “userImage” : “Rm9vYmFyIQ==” } 我可以像这样构造一个User对象: User user = mapper.readValue(new File(“user.json”), User.class); 但是如果User.json文件具有以下内容,我该如何构造对象列表: { “name” : { “first” : “Joe”, “last” : “Sixpack” }, “gender” : “MALE”, “verified” : false, “userImage” : “Rm9vYmFyIQ==” }, { “name” : { […]

jTextField仅接受字母和空格

如果用户输入其他字符,我希望用户只输入字母或空白区域,我想用jOptionPane给出消息我已经搜索过,我试过下面的代码 if (!(Pattern.matches(“^[a-zA-Z]+$”, answerField1.getText()))) JOptionPane.showMessageDialog(null, “Please enter a valid character”, “Error”, JOptionPane.ERROR_MESSAGE); 但现在无论我输入它都会给出错误 现在我改变了代码 Pattern letterPattern = Pattern.compile(“^[a-zA-Z]+$”); if (!(letterPattern.matcher(answerField1.getText()).matches())) { JOptionPane.showMessageDialog(null, “Please enter a valid character”, “Error”, JOptionPane.ERROR_MESSAGE); } 现在它只提供消息第一次用户输入号码。 我怎么能解决这个问题

创建证书时IP地址作为主机名(CN)? (HTTPS主机名错误:应该是)

可能重复: 如何解析SSL证书服务器名称/我可以使用keytool添加备用名称吗? 我创建了一个证书,并将CN设置为我的服务器的IP地址,格式为xxx.xxx.xxx.xxx。 但是当我尝试在Java中运行我的代码时,我收到的HTTPS hostname wrong: should be 错误消息。 可能有什么不对? 我确定我正在连接到正确的IP地址。 但是,我没有在证书上指定服务器的端口。 在为CN提供价值时是否需要端口? 但我正在使用https的默认端口8443.此外,我尝试将CN从服务器的IP地址更改为“localhost”。 它在那之后工作。 我在想是否CN部分不接受IP地址作为值? 您能否解释一下CN的工作原理以及它所需的价值是多少? 谢谢!

如何将Icon从JLabel转换为BufferedImage?

简单,非常直接,但似乎叔叔谷歌和我感到困惑。 我有单个JLabel已经拥有自己的Icon 。 如何将从JLabel获取的Icon转换为BufferedImage ? 有没有办法:我尝试过像这样的多重铸造 …… final BufferedImage bf1 = (BufferedImage)((Image)jll_img.getIcon()); ..但它失败了。

Collectors.toMap具有相同的键(打印相同的键)

我有这个代码来获取地图: List myList = myMethod.getList(); myList.stream().collect( Collectors.toMap( MyObject::getKey, MyObject::getValue, (e1, e2) -> { System.out.println(“Duplicate keys !!!”); return e1; }, LinkedHashMap::new ) ); 我如何用重复键打印消息“重复键”?

getDeclaredMethods()在Java 7与Java 8中的表现不同

考虑以下小例子: package prv.rli.codetest; import java.lang.reflect.Method; public class BreakingInterfaces { interface Base { BaseFoo foo(); interface BaseFoo { } } interface Derived extends Base { DerivedFoo foo(); interface DerivedFoo extends BaseFoo { } } public static void main(String[] args) { dumpDeclaredMethods(Derived.class); } private static void dumpDeclaredMethods(Class class1) { System.out.println(“—” + class1.getSimpleName() + “—“); Method[] methods = […]

Java时区 – IST的奇怪行为?

我有以下代码: DateFormat df = new SimpleDateFormat(“M/d/yy h:mm az”); df.setLenient(false); System.out.println(df.parse(“6/29/2012 5:15 PM IST”)); 假设我现在将PC的时区设置为太平洋时间(PDT为UTC-7),则会打印出来 2012年4月29日星期五08:15:00 不是PDT比IST(印度标准时间)落后12.5小时? 任何其他时区都不会出现此问题 – 我在日期字符串中尝试使用UTC,PKT,MMT等代替IST。 Java中是否有两个IST? PS:实际代码中的日期字符串来自外部源,因此我不能使用GMT偏移或任何其他时区格式。

删除链接列表的最后一个节点

我正在练习使用链接列表节点,并遇到了一个我不知道如何回答的问题。 你如何删除链表中的最后一个节点。 下面的代码适用于所有条目的最后一个节点。 最后一个不会被删除。 节点类 public class Node { private String data; private Node next; Node(String data, Node next) { this.data = data; this.next = next; } public void setData(String d) { data = d; } public void setNext(Node n) { next = n; } public String getData() { return data; } public Node getNext() […]

带有ArrayList的Java Generic 添加元素

我有A , B , C和D类,其中B延伸A , C延伸A和D延伸A 我有以下ArrayList每个都有几个元素: ArrayList b; ArrayList mix = b; 我打算让变量mix包含B , C或D类型的元素。 我尝试将类型C的元素添加到这样的mix : mix.add(anElementOfTypeC); 但IDE不允许我这样做,它说: anElementOfTypeC不能通过调用转换的方法转换为CAP#1,其中CAP#1是一个新的类型变量:CAP#1从捕获?扩展A? 延伸A. 我用的是 正确 ? 我该如何解决这个问题?