小编Mar*_*iot的帖子

计算C++中矩阵的伪逆

我想在C++中计算矩阵的Moore-Penrose伪逆,有人可以指向我的库实现或数字配方吗?

谢谢!

c++ recipe matrix-inverse

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

Java中Project项目文件夹的绝对路径

这个主题有很多混乱.有人问过几个问题.事情似乎还不清楚.ClassLoader,绝对文件路径等

假设我有一个项目目录结构,

MyProject--
            --dist        
            --lib
            --src
            --test

我在"lib/txt"目录中有一个资源说"txtfile.txt".我想以独立于系统的方式访问它.我需要项目的绝对路径.所以我可以将路径编码为abspath +"/ lib/Dictionary/txtfile.txt"

假设我这样做

 java.io.File file = new java.io.File("");   //Dummy file
    String  abspath=file.getAbsolutePath();
Run Code Online (Sandbox Code Playgroud)

我得到当前的工作目录,不一定是项目根目录.

假设我从'dist'文件夹执行最后的'prj.jar',该文件夹还包含"lib/txt/txtfile.txt"目录结构和资源,它也应该在这里工作.我应该是dist文件夹的绝对路径.

希望问题很清楚.

java deployment absolute-path

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

将字符串拆分为几个两个字符串

我有这个字符串 8S8Q4D1SKCQC2C4S6H4C6DJS2S1C6C

如何将此字符串拆分为每个子字符串包含2个字符的子字符串?我很困惑,因为我找不到拆分它们的分隔符.

java string split substring

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

我可以从 Java 动态地向 Groovy 基本脚本添加方法吗?

虽然这不是标准做法,但我很好奇是否可以将方法注入GroovyShell编译上下文。

这个想法是有类似的东西(在Java中):

GroovyShell shell = new GroovyShell();
Script script = shell.parse("test()");
script.run();
Run Code Online (Sandbox Code Playgroud)

我想动态添加可调用的方法的地方test(),已列出。

我已经尝试了一下用的捣乱Script metaClass,但我不明白的方式来实际操作metaClass从Java。特别是,调用script.getMetaClass().getMethods().add(...)会引发 UnsupportedOperationException。

本质上,我想定义调用 Java 方法而不是基于 Groovy 方法的 DSL 调用点。我愿意用 Groovy 编写这部分(并且我知道如何做到这一点),但我真的很好奇这是否是一种可行的替代方法,或者如果不是,陷阱是什么。

简而言之:如何动态定义一个GroovyShell知道的方法?

dsl groovy

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

参数化查询:检查字段是否在SELECT语句中的值数组中

我正在尝试将参数化查询配置为以下效果:

SELECT field1 FROM myTable WHERE field2 IN (1,2,3,4)
Run Code Online (Sandbox Code Playgroud)

我正在使用的数据库是Postgres.

此查询成功运行未参数化,但我想使用带有JdbcTemplate的参数化查询来填充有效field2值(整数)的列表.

尝试不同的值var("1,2,3,4","[1,2,3,4]","{1,2,3,4}",或"(1,2,3,4)"上查询),我试过的变化:

myJdbcTemplate.query("SELECT field1 FROM field2 IN (?)", new Object[]{ var })
Run Code Online (Sandbox Code Playgroud)

myJdbcTemplate.query("SELECT field1 FROM field2 IN (?::integer[])", new Object[]{ var })
Run Code Online (Sandbox Code Playgroud)

并且

myJdbcTemplate.query("SELECT field1 FROM field2 IN ?::integer[]", new Object[]{ var })
Run Code Online (Sandbox Code Playgroud)

另外,描述如何参数化查询的资源也非常有用.

所有这些查询抛出PSQLExceptions,指示操作符失败或类型不匹配 - 这似乎是合理的,因为我无法弄清楚如何参数化查询.

java sql postgresql jdbc parameterized

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

在for循环中重用ArrayLists的有效方法是什么?

我在for循环中重复使用相同的ArrayList,我使用

for loop
    results = new ArrayList<Integer>();
    experts = new ArrayList<Integer>();
    output = new ArrayList<String>();
....
Run Code Online (Sandbox Code Playgroud)

创造新的.

我想这是错的,因为我正在分配新的内存.它是否正确 ?如果是,我怎么能清空它们?

补充:另一个例子

我每次调用这个方法时都会创建新的变量.这是好习惯吗?我的意思是创造新的精度,相关的创造...等?或者我应该在我的课程中声明它们,在方法之外不分配越来越多的内存?

public static void computeMAP(ArrayList<Integer> results, ArrayList<Integer> experts) {

  //compute MAP
  double precision = 0;
  int relevantFound = 0;
  double sumprecision = 0;
Run Code Online (Sandbox Code Playgroud)

谢谢

java

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

使用iOS设备作为TCP客户端 - 没有Bonjour

我想使用iOS设备作为TCP客户端,但我找不到一个可理解的API /指南/示例如何做到这一点.我试过SimpleNetworkStreamsPictureSharing,但他们使用Bonjour两者.我可以轻松地建立UDP连接,通过学习UDPEcho,但我找不到与UDPEchoTCP 一样好的样本.我想要一个连接到服务器的简单示例,并在屏幕上打印来自服务器的所有传入消息 - 就是这样.

谢谢!

tcp objective-c ios

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

正则表达式 - 包括字符串:java

我试图打印出与java中特定模式匹配的文件中的行.我正在使用Pattern类来执行此操作.

我试着将模式设为"[harry]",这样就可以打印掉每一行都有"哈里"的行.但模式总是评估为假.我的假设是我输入的正则表达式是一个字符串.

我的代码如下:

try {

      BufferedReader br = new BufferedReader(new FileReader("test.txt"));
      Pattern p = Pattern.compile("harry");
      String str = null;
      try {
        while((str = br.readLine())!=null){
          Matcher match = p.matcher(str);
          boolean b = match.matches();
          if(b){
            System.out.println(str);
          }
        }
      } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
Run Code Online (Sandbox Code Playgroud)

请帮忙.我不明白代码在哪里破解.我正在尝试不同的模式匹配,但这是正确的方法吗?

谢谢

java regex pattern-matching

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

C中printf的标准定义是什么?

printf()标准C库中定义的函数的函数定义是什么?

我需要定义来解决以下问题:

给出以下输出:

int main()
{
   int a = 2;
   int b = 5;
   int c = 10;
   printf("%d ",a,b,c);
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

c

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

给定均匀随机数生成器生成随机数

有人问我产生之间的随机数ab,包容,使用random(0,1).random(0,1)生成0到1之间的均匀随机数.

我回答了

(a+(((1+random(0,1))*b))%(b-a))
Run Code Online (Sandbox Code Playgroud)

我的采访者对我b在这段表达中的用法不满意:

(((1+random(0,1))*b))
Run Code Online (Sandbox Code Playgroud)

然后我尝试将我的答案改为:

int*z=(int*)malloc(sizeof(int));
(a+(((1+random(0,1))*(*z)))%(b-a));
Run Code Online (Sandbox Code Playgroud)

后来这个问题改变产生random(1,7)random(1,5).我回答:

A = rand(1,5)%3
B = (rand(1,5)+1)%3
C = (rand(1,5)+2)%3

rand(1,7) = rand(1,5)+ (A+B+C)%3
Run Code Online (Sandbox Code Playgroud)

我的答案是否正确?

c c++ algorithm

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