超级关键字没有扩展到超类

有一个简单的程序,在构造函数中,super()被调用而没有扩展到超类,我无法理解在这种情况下会做什么呢? public class Student { private String name; private int rollNum; Student(String name,int rollNum){ super();// I can not understand why super keyword here. this.name=name; this.rollNum=rollNum; } public static void main(String[] args) { Student s1 = new Student(“A”,1); Student s2 = new Student(“A”,1); System.out.println(s1.equals(s2)); } }

覆盖以前的控制台输出

是否可以覆盖最后一个System.out.println输出,所以我可以例如可视化数组中的更改或创建progessbar? 例如,如果我有这个类: class Main{ public static void main(String[] args){ for(int i = 0; i < 10; i++){ for(int j = 0; j < i; j++){ System.out.print("#"); } System.out.println(""); } } } 我需要做些什么来创建这个简单的进度条,它显示在一行而不是10个单独的行中?

使用不同的对象名称映射JSON

我对JSON很陌生,而且我已经四处寻找尝试做什么但不确定我是否完全理解。 我正在进行外部API调用返回: 2015-12-21 01:22:09 INFO RiotURLSender:60 – Total json: {“USERNAME”:{“profileIconId”:984,”revisionDate”:1450655430000,”name”:”USERNAME2″,”id”:38584682,”summonerLevel”:30}} 其中’USERNAME’(和USERNAME2 – 可能与USERNAME略有不同)将根据您传递调用参数的内容而有所不同。 我使用Jackson Object Mapper映射USERNAME对象中的各个值 – 但是没有意识到我也必须映射该对象。 我一直在使用DTO中的注释,如: @JsonProperty(“profileIconId”) private Long profileIconId; 和映射使用: summonerRankedInfoDTO = mapper.readValue(jsonString, SummonerRankedInfoDTO.class); 如何使用每次都在更改的USERNAME值进行映射? 这看起来有点奇怪,这是一个不好的做法,实际变化的关键,而不是只有相同的键和不同的值? 谢谢

如何将Optional转换为OptionalInt?

我有一个可Optional ,我想“转换”为OptionalInt ,但似乎没有一个简单的方法来做到这一点。 这就是我想要做的(人为的例子): public OptionalInt getInt() { return Optional.ofNullable(someString).filter(s -> s.matches(“\\d+”)).mapToInt(Integer::parseInt); } 但是, mapToInt()方法没有。 我能想到的最好的是: return Optional.ofNullable(someString) .filter(s -> s.matches(“\\d+”)) .map(s -> OptionalInt.of(Integer.parseInt(s))) .orElse(OptionalInt.empty()); 但这似乎不够优雅。 我是否遗漏了JDK中可以使转换更优雅的东西?

如何在java中给出默认的新线程名称?

当我运行这个程序 public class Fabric extends Thread { public static void main(String[] args) { Thread t1 = new Thread(new Fabric()); Thread t2 = new Thread(new Fabric()); Thread t3 = new Thread(new Fabric()); t1.start(); t2.start(); t3.start(); } public void run() { for(int i = 0; i < 2; i++) System.out.print(Thread.currentThread().getName() + " "); } } 我得到输出 Thread-1 […]

Switch Statement给出了不兼容类型错误

我正在尝试编译,我收到此错误: enigma/Rotor.java:30: incompatible types found : java.lang.String required: int switch(name){ 1 error 为什么我收到此错误? 我如何解决它? 它在包中,我似乎无法弄明白。 这是代码: String label; Rotor(){;} Rotor(String name){ switch(name){ case “B”: conversion_chart = B; break; case “C”: conversion_chart = C; break; case “I”: conversion_chart=I; notch = NOTCH[0]; break; case “II”: conversion_chart=II; notch = NOTCH[1]; break; case “III”: conversion_chart=III; notch = NOTCH[2]; break; […]

Java:懒惰初始化单例

创建单身人士的模式似乎是这样的: public class Singleton { private static final Singleton instance = new Singleton(); private Singleton(){ } public static Singleton getInstance() { return instance; } } 但是我的问题是,如果Singleton构造函数执行不是unit testing友好的事情,例如调用外部服务,jndi查找等,你如何使用这样的类。 我想我可以重构它: public class Singleton { private static Singleton instance; private Singleton(){ } public synchronized static Singleton getInstance() { if(instance == null) instance = new Singleton(); return instance; } […]

Spring MVC响应编码问题

在过去几个小时里,我已经阅读了很多关于这个主题的内容,到目前为止还没有任何工作。 我正在尝试返回包含“奇数”某些字符的响应。 这是一个例子,非常简单: @ResponseBody @RequestMapping(value=”test”) public String test(){ String test = “čćžđš”; System.out.println(test); logger.info(test); return test; } 这是我的web.xml ,因为我找到了一些CharacterEncodingFilter帮助的答案(虽然不是我的情况)。 我使用POST方法,因为我读到这适用于POST。 也找到了这个答案 (相关)。 也没有帮助。 当我调试它时会出现正确的值,但是当我打印时它没有,因为它可以在下面看到: 当我从jmeter测试时,响应似乎没问题, Content-Type是text/html;charset=UTF-8 这是一个截图。 http://i56.tinypic.com/14lt653.jpg 我认为正确的方法是返回UTF-8,也许我错了。

未在servlet中的请求中插入自定义标头

有一个需要通过自定义http标头获取信息的四方派对应用程序,因此我编写了一个简单的测试应用程序,创建此标题,然后重定向到列出所有标题的页面。 生成标头的servlet片段是: protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(“text/plain”); response.setHeader(“cust-header”, “cust-val”); response.sendRedirect(“header.jsp”); } 另一方面,header.jsp的相关代码是: <% Enumeration enumeration = request.getHeaderNames(); while (enumeration.hasMoreElements()) { String string = (String)enumeration.nextElement(); out.println("” +string +”: ” + request.getHeader(string)+ “”); } %> 这显示以下标题: Host: localhost:9082 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; es-ES; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10 (.NET CLR […]

重复的局部变量(For Loops)

我正在尝试解决一项任务(我仍然是Java的新手)并且已经通过许多资源来解决这个冲突,但仍然无法解决这个问题。(注意:Tuna是我的Scanner变量) int counted, sum, counted1; System.out.print(“Enter your number to be calculated: “); counted = tuna.nextInt(); counted1 =tuna.nextInt(); for(int counted=0;counted<=counted1;counted++){ System.out.println("The sum is: "+ counted); } } } 结果是:线程“main”中的exceptionjava.lang.Error:未解决的编译问题:计算重复的局部变量 我应该解决的问题是: 编写程序以读取数字,并将从1到该数字的所有数字相加。 例如,如果用户键在6中,则输出为21(1 + 2 + 3 + 4 + 5 + 6)。 补充:我读了一个相似的问题(),但我之前没有通过声明来解决这个问题。