小编Ami*_*t G的帖子

在Intellij Idea中切换线程

如何在暂停程序的线程之间切换?

或任何有关使用Intellij Idea进行多线程调试的教程,描述基本功能 - 暂停,恢复,在线程之间切换.

Netbeans提供的非常好的教程/分步指南:例如https://netbeans.org/kb/docs/java/debug-multithreaded.html

debugging multithreading intellij-idea

9
推荐指数
2
解决办法
7562
查看次数

Haskell - 模式匹配和递归

我是Haskell和编程的新手.关于在模式匹配的递归函数中绑定的问题.例如,假设我有一个函数来检查给定列表(x:xs)是否是另一个列表的子列表(y:ys).根据我的教科书中的例子,我最初的想法是:

sublist [] ys = True
sublist xs [] = False
sublist (x:xs) (y:ys)
   | x == y = sublist xs ys
   | x /= y = sublist (x:xs) ys
Run Code Online (Sandbox Code Playgroud)

这适用于测试数据,例如,

sublist [1, 2, 3] [1, 2, 4, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

在哪里,我预计它会失败.我希望它会失败,因为

sublist [1, 2, 3] [1, 2, 4, 1, 2, 3]
   = sublist [2, 3] [2, 4, 1, 2, 3]
   = sublist [3] [4, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

在这一点上,我认为,[3] = 3:[]将与子列表中的(x:xs)匹配,[4,1,2,3]将与子列表中的(y:ys)匹配.那么子列表是如何工作的呢?

编辑:感谢大家,我想我已经解决了我的问题.如上所述,我("下意识地")想要子列表为我回溯.使用最后一个答案(BMeph)作为指南,我决定以不同的方式解决问题,以解决"绑定问题",即"回溯"问题.

subseq :: (Eq …
Run Code Online (Sandbox Code Playgroud)

binding haskell matching

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

在Intellij Idea调试器中查看unicode字符串

如何在Intellij Idea调试器数据视图中查看Unicode编码的字符串?例如考虑以下代码

String str = "?????"; //some Unicode string: utf-8
String str1 = "\u0938\u0941\u091d\u093e\u0935";
System.out.println(str);
Run Code Online (Sandbox Code Playgroud)

无法查看调试器的变量str-in数据视图,它显示垃圾值.即使设定值显示适当的值.

在此输入图像描述 任何建议/解决方案?

可能在某处遗漏了一些编码设置.

debugging unicode intellij-idea

7
推荐指数
1
解决办法
3714
查看次数

由于网络中断后锁定nfs文件导致JVM崩溃

以下代码片段导致JVM崩溃:如果获取锁定后发生网络中断

    while (true) {

       //file shared over nfs
       String filename = "/home/amit/mount/lock/aLock.txt";
       RandomAccessFile file = new RandomAccessFile(filename, "rws");
       System.out.println("file opened");
       FileLock fileLock = file.getChannel().tryLock();
       if (fileLock != null) {
          System.out.println("lock acquired");
       } else {
          System.out.println("lock not acquired");
       }

       try {
          //wait for 15 sec
          Thread.sleep(30000);
       } catch (InterruptedException e) {
          e.printStackTrace();
       }
       System.out.println("closing filelock");
       fileLock.close();
       System.out.println("closing file");
       file.close();
    }
Run Code Online (Sandbox Code Playgroud)

观察:JVM接收KILL(9)信号并退出,退出代码为137(128 + 9).

可能在网络连接重建之后,文件描述符表中出现了问题.使用系统调用flock(2)和shell实用程序flock(1)可以重现此行为.

任何建议/解决方案?

PS:将Oracle JDK 1.7.0_25与NFSv4一起使用

编辑:此锁定将用于标识分布式高可用性集群中哪个进程处于活动状态.退出代码是137.我期待什么?检测问题的方法.关闭文件并尝试重新获取.

java nfs file-locking

6
推荐指数
2
解决办法
1943
查看次数

在java中将bitstring转换为byte

我需要在Java中将每个位设置为1个字节.

bit7 -  1,
bit6 -  1,
bit5 - 1,
bit4 -  0,
bit3 – 0,
bit2 – 0,
bit1 – 0,
bit0 – 0
Run Code Online (Sandbox Code Playgroud)

我写过:

byte extra_dop = 0b00000111;
Run Code Online (Sandbox Code Playgroud)

但得到以下错误:

-source 1.5不支持二进制文字(使用-source 7或更高版本来启用二进制文字)

java byte

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

OAuth&facebook access_token无法正常工作,需要OAuth专家

我已经阅读了1000多个关于如何在两次调用OAuth中获取用户令牌时redirect_uri必须相同的博客,但是100%的时间,无论我如何格式化URL,它都失败了:

{
   "error": {
      "message": "Error validating verification code. Please make sure your redirect_uri is identical to the one you used in the OAuth dialog request",
      "type": "OAuthException",
      "code": 100
   }
}
Run Code Online (Sandbox Code Playgroud)

我一丝不苟地确保两个调用中的URL完全相同.我的网址必须有?在它,我尝试用%3f替换它,但这没有帮助.必须有其他可能导致此错误的东西,我需要了解可能是什么?

在过去的一个月里,这对我来说似乎有所突破.我们在7月下旬做了一个节目,事情很顺利(因为它是一个不同的服务器,因为该节目有不同的基本URL).可能是URL是这种格式:

someprestuff.morestuff.mainurl.com?prm=value
Run Code Online (Sandbox Code Playgroud)

Facebook的URL有太多"部分"可以接受吗?

我正在寻找替代品寻找.

facebook facebook-graph-api oauth-2.0 facebook-oauth

4
推荐指数
1
解决办法
7606
查看次数

常见的@before和@after用于junit中的测试类

是否可以使用可在多个测试类中使用的通用@Before@After固定装置?

我已根据模块(库存,销售,采购等)将测试(分类)分开.对于所有这些测试,用户登录是一个先决条件,目前我正在@Before为每个类使用它.问题是当我需要更改用户ID或密码时,我需要更改每个类.有没有办法编写@Before/ @After可以在所有测试类中使用?在这种情况下,测试套件是否可以派上用场?

java junit4 testcase

3
推荐指数
2
解决办法
1278
查看次数

Java 7二进制文字澄清

如您所知,二进制文字是Java 7中引入的新功能:

int x = 0b1011;
System.out.println(x); // prints 11 as expected
Run Code Online (Sandbox Code Playgroud)

但是,当我试图从文字二进制文件中获取最大数量时,我得到了-1!

int x = 0b11111111111111111111111111111111;
System.out.println(x); // prints -1 !!!
Run Code Online (Sandbox Code Playgroud)

更多详情:

System.out.println(Integer.MAX_VALUE);
System.out.println(0b1111111111111111111111111111111); // 31 bits

/* Both print 2147483647 */

/************************************************************************************/

System.out.println(Integer.MIN_VALUE);
System.out.println(0b10000000000000000000000000000000); // 32 bits (increment by 1)

/* Both print -2147483648 */

/************************************************************************************/

// And if you keep increasing the binary literal, its actual value
// will be decreased until you reach the maximum binary literal and
// its actual value will be …
Run Code Online (Sandbox Code Playgroud)

java java-7

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

从Java中删除ArrayList中的对象出错[Eclipse]

我有这个方法从ArrayList 中删除特定的对象P.

这是我的代码:

public void removeProduct(Product p) throws StockException{
        int flag=0;
        for(Product i:StockProducts)
            if(p.getCode()==i.getCode()){
                this.StockProducts.remove(p);
                flag=1;
            }

        if(flag==0){
                StockException e = new StockException("could not remove the Product , PRODUCT IS NOT IN THE STOCK:  ", p);
        throw e;
          }
    }
Run Code Online (Sandbox Code Playgroud)

错误:

Exception in thread "main" java.util.ConcurrentModificationException
    at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
    at java.util.ArrayList$Itr.next(Unknown Source)
    at Stock.removeProduct(Stock.java:29)
    at Test.main(Test.java:18)
Run Code Online (Sandbox Code Playgroud)

如果您需要有关我的代码的更多信息,请告诉我

添加方法

public void addProduct(Product p) throws StockException{
        for(Product i:StockProducts)
            if(p.getCode()==i.getCode()){
                        StockException e = new StockException("could not add the Product , CODE ALREADY …
Run Code Online (Sandbox Code Playgroud)

java collections arraylist concurrentmodification

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