小编Dil*_*Dil的帖子

如何在Eclipse中使用SonarLint

我被分配使用SonarQube来获得代码质量.但是当我将它的插件下载到Eclipse时,我知道它已被弃用,新的​​是SonarLint.

但到目前为止,我找不到任何关于如何使用SonarLint的好文档.如何使用它检查java项目.我只接触过Youtube视频.但遗憾的是他们真的不清楚我.

如果可以指引我到一个好地方获得明确的知识,我将非常感激你.

java eclipse sonarlint

27
推荐指数
1
解决办法
8万
查看次数

如何在简单的现金存款提取程序中处理多线程

我的导师说使用多线程来更新帐户管理系统.以下给出了系统的概念. 在此输入图像描述

这是我的源代码.

帐户类

public class Account {
    int balance= 1000;

    public int getBal(){
        return balance;
    }

    public void withdraw(int bal){
        balance= balance-bal;
    }

    public void deposit(int bal){
        balance= balance+bal;
    }
}
Run Code Online (Sandbox Code Playgroud)

ThreadExercise类

public class ThreadExercise implements Runnable{

    Account acc = new Account();

    public static void main(String[] args) {
        ThreadExercise ts = new ThreadExercise();
        Thread t1 = new Thread(ts, "person 1");
        Thread t2 = new Thread(ts, "person 2");
        Thread t3 = new Thread(ts, "person 3");
        t1.start();
        t2.start();
        t3.start();
    }

    @Override
    public …
Run Code Online (Sandbox Code Playgroud)

java multithreading synchronized

8
推荐指数
1
解决办法
3万
查看次数

如何将小数转换为分数?

我需要将十进制转换为分数.它很容易转换为10英尺.

1.5 => 15/10
Run Code Online (Sandbox Code Playgroud)

这可以通过以下代码完成:

public class Rational {

    private int num, denom;

    public Rational(double d) {
        String s = String.valueOf(d);
        int digitsDec = s.length() - 1 - s.indexOf('.');
        int denom = 1;
        for (int i = 0; i < digitsDec; i++) {
            d *= 10;    
            denom *= 10;
        }

        int num = (int) Math.round(d);
        this.num = num;
        this.denom = denom;
    }

    public Rational(int num, int denom) {
        this.num = num;
        this.denom = denom;
    }

    public String toString() {
        return …
Run Code Online (Sandbox Code Playgroud)

java decimal fractions

8
推荐指数
2
解决办法
2万
查看次数

如何使用java8中的Method参数打印多个参数


我正试图hashmap用两个java 打印出基本的.

Map<Integer, String> mp = new HashMap<Integer, String>();
mp.put(10, "apple");
mp.put(20, "orange");
mp.put(30, "banana");
Run Code Online (Sandbox Code Playgroud)

但是当谈到method referencejava8 时,我无法弄清楚如何打印多个参数.


我试过这样的事.但它给了我编译错误.

mp.forEach(System.out::println(i+" "+s););
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题.
谢谢.

java lambda hashmap java-8 method-reference

6
推荐指数
3
解决办法
913
查看次数

如何修复EXE4J_JAVA_HOME,你的系统错误上找不到JVM?

我安装了java 64bit 1.7和exe4j 64bit版本.我试图从exe4j生成一个exe,但在运行程序时我遇到了这个错误.
这就是我设置路径变量的方法.这是正确的jre路径.我在这里想念的是什么?请告诉我.

在此输入图像描述

谢谢.

java exe4j

4
推荐指数
2
解决办法
8万
查看次数

数组操作:HackerRank 问题:JAVA

我正在从hackerrank做这个数组操作问题,它告诉我编译错误因超时终止

对于小阵列,我的方法非常有效。这个错误只发生在更大的数组值上。

这是问题链接。问题在这里

从一个 1 索引的零数组和一个操作列表开始,对于每个操作,向两个给定索引之间的每个数组元素添加一个值,包括两个给定索引。执行完所有操作后,返回数组中的最大值。

例如,您的 zeros 数组的长度。您的查询列表如下:

a b k
1 5 3
4 8 7
6 9 1
Run Code Online (Sandbox Code Playgroud)

将索引和包含之间的值相加:

index -> 1 2 3  4  5 6 7 8 9 10
        [0,0,0, 0, 0,0,0,0,0, 0]
        [3,3,3, 3, 3,0,0,0,0, 0]
        [3,3,3,10,10,7,7,7,0, 0]
        [3,3,3,10,10,8,8,8,1, 0]
Run Code Online (Sandbox Code Playgroud)

最大值是在所有操作执行之后。

下面给出的是我的方法。

 static long arrayManipulation(int n, int[][] queries) {
    long max = 0L;
    long[] arr = new long[n];
    for (int i = 0; i < n; i++) { …
Run Code Online (Sandbox Code Playgroud)

java arrays timeoutexception

4
推荐指数
2
解决办法
7896
查看次数

如何修复com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:连接关闭后不允许任何操作.例外?

这是我保存记录的查询.


public void saveTotal(JTextField txtGtotal, JTextField txtPTotal) {
    try {
        ResultSet rs = JDBC.getData("select MAX(or_id) as or_id from `order`");
        if (rs.first()) {
            if (rs.getInt("or_id") > 0) {
                try {
                    String date1 = new Validation().today();
                    boolean b1 = JDBC.putData("insert into transaction(tr_date, amount, tr_type) values ('" + date1 + "' , '" + txtGtotal.getText() + "' , 'order')");
                    if (b1) {
                        try {
                            ResultSet rs1 = JDBC.getData("select MAX(tr_id) as tr_id from transaction");
                            if (rs1.first()) {
                                try {
                                    boolean b2 = JDBC.putData("insert into …
Run Code Online (Sandbox Code Playgroud)

java mysql transactions jdbc

3
推荐指数
1
解决办法
3万
查看次数

IsNan()方法可用性

在java中,我们可以使用floatdouble值的isNan()方法. 例如:

 if (!Double.isNaN(0.01)) {
     // condition happens    
 } 
Run Code Online (Sandbox Code Playgroud)


 if (!Float.isNaN(0.01F)) {
     // condition happens    
 } 
Run Code Online (Sandbox Code Playgroud)


我想知道为什么我们不能将它用于整数.

java string methods integer nan

2
推荐指数
1
解决办法
2357
查看次数

MVC如何使用java swing GUI

假设我有一个带有textfeild和按钮的swing GUI.当我单击按钮时,我想将该值保存在db中的文本中并返回joptionpane"success"消息.
我以前的方式是
模型:JDBC类
视图:GUI:在该按钮的" 动作执行 "操作中,我使用参数调用save方法.

   Controller con = new Controller();
   con.save(text1.getText());
Run Code Online (Sandbox Code Playgroud)

控制器:编写保存方法.

   JDBC db = new                             
   public void save(jTextfeild text){     
   text= text1.getText();
   boolean b= db.putData("insert into .. values(text)");
   if(b){
   JOptionPane("Success"); 
   }
 }
Run Code Online (Sandbox Code Playgroud)


这就是我的开始.但后来我明白这不应该是这样的,这是完全不安全和愚蠢的.
我真的想学习如何在MVC中正确地做到这一点.请用一个小例子来解释这个问题.感谢您的时间.

java model-view-controller user-interface swing

0
推荐指数
1
解决办法
1758
查看次数

编译时安全和运行时安全是什么意思?


根据这篇关于 Java Enum 的文章,运行时安全可以通过使用==运算符来比较状态和阻止来实现NullPointerException

if(testPz.getStatus() == Pizza.PizzaStatus.DELIVERED); 
Run Code Online (Sandbox Code Playgroud)

此外,compile-time-safety虽然从逻辑上证明比较是错误的,但通过使用运算符可以避免此问题==

if(testPz.getStatus() == TestColor.GREEN);
Run Code Online (Sandbox Code Playgroud)

你能告诉我什么是 Java 中的 compile-time-safety和吗?runtime-safety

如果可以的话请给我一个小例子。

java runtime compile-time

0
推荐指数
1
解决办法
2194
查看次数

为什么LinkedHashMap无法在TreeMap中对HashMap进行排序?

我正在尝试HashMap使用LinkedHashMap和排序输出TreeMap.

当我用它TreeMap来理清HashMap它就像一个魅力.

        Map<Integer, String> hMap = new HashMap<Integer, String>();

        hMap.put(40, "d");
        hMap.put(10, "a");
        hMap.put(30, "c");
        hMap.put(20, "b");

        System.out.println(" ");
        System.out.println("before");

        for (Map.Entry m1 : hMap.entrySet()) {
            System.out.print(m1.getKey() + " " + m1.getValue() + "    ");
        }

        System.out.println("after");

        Map<Integer, String> hTree = new TreeMap<Integer, String>(hMap);
        for (Map.Entry m2 : hTree.entrySet()) {
            System.out.print(m2.getKey() + " " + m2.getValue() + "    ");
        }
Run Code Online (Sandbox Code Playgroud)

输出:
before 20 b 40 d 10 a 30 c …

java collections hashmap treemap linkedhashmap

-1
推荐指数
3
解决办法
171
查看次数