小编chi*_*der的帖子

在Matlab中指定的时间长度后断开循环

我对tic函数感到有点困惑,但我不确定是否有更好的东西可以用来做我想做的事情.在psuedo-Matlab中:

startTime = tic

while(true)

   #some_stochastic_process

   if(now - startTime > RUNTIME)
     break;
   end
end
Run Code Online (Sandbox Code Playgroud)

但随后对tic的召唤将破坏原始时间.有没有办法在不覆盖的情况下访问tic的当前值?

matlab timer

6
推荐指数
1
解决办法
4165
查看次数

当对象的状态发生变化时,在Java中触发事件

我有一个Java对象,其状态随着时间的推移而变化.当对象中的一个字段达到某个值时,我希望触发一个外部事件.

我知道Swing通过Listeners处理这个模式 - 我在这个项目中使用Swing - 但是我不确定哪种Listener会适用于这种情况.用户不会更改对象的状态,并且监听器似乎仅由用户的操作触发.

编辑:我正在监视的对象本身不是Swing组件 - 它在主线程的后台运行.

java swing listener

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

Java Swing Timers中的负延迟

我刚刚在一些代码中遇到过这个问题,我很困惑.

 timer = new Timer(-10, new
         ActionListener()
         {
            //Do some stuff
         });
Run Code Online (Sandbox Code Playgroud)

摆动Timer对象中的负(或零)延迟有什么意义?根据API,第一个事件立即被触发,但是-10和负-100之间有什么区别?在我的代码中,它们似乎功能不同,但我无法确定它对Timer对象的更改.

java swing

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

建立自己的维基的建议?

我和我的朋友们正在考虑创建我们自己的wiki.考虑到他们最近的普及程度,我们听说并不难.我们希望尽可能简化网站 - 我们在网页设计方面有一些经验,但在系统管理方面却不是很多.我们应该记住哪些事情(例如,哪些wikifarms可能有用,或者我们应该记住哪些警告)?

wiki wiki-engine

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

导入的Python模块中的命令行参数

这更多是关于编码风格的问题,但是我有一个脚本来处理特定文件(或文件集)。允许用户提供这些文件作为命令行参数会很好。当然,用户可能会忘记提供这些文件,或者文件名无效,因此我必须在此处引入try / except。

问题是,将来有人可能要导入我的模块。但是,我不知道程序可能需要哪些命令行参数。另外,如果在我的模块访问命令行参数时抛出错误,则似乎可以通过导入我的模块的脚本更好地处理它。但是,如果引发错误,我的脚本仍然需要能够独立运行。

是否有解决此问题的明智方法,还是仅放弃命令行参数的最佳解决方案?

python command-line

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

在Java中有条件地返回对象(没有迭代器)

假设我getBook()在类Bookshelf中有一个方法.如果Bookshelf不为空,则该方法应仅返回Book对象.但是,Java要求该方法在所有情况下都返回Book对象.我可以有一个isShelfEmpty()首先调用的方法,但是向调用者显示Bookshelf的实现似乎很尴尬.最干净的方法是什么?

一个Iterator会使这更简单,但这是一个类项目,我们还没有在类中覆盖迭代器.

编辑:

我考虑过返回null,但由于某种原因,这对我来说似乎有些难看.这是最好的选择,还是有另一种选择?

java

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

在Python中创建类似棋盘游戏的网格

我正在考虑用Python创建一个棋盘游戏,它将有一个空格网格,每个都有不同的属性,并且可能有也可能没有碎片.这些作品应该能够在空间之间移动,但要遵守各种规则.(国际象棋或西洋跳棋将是我正在考虑的很好的例子,虽然我的游戏会有不同/更复杂的规则,并且网格可能不是正方形,即使空间是这样).

我使用链接列表的修改版本为数据结构类编写了类似的Java实现.但这是Python,所以我想有一个更好的方法(甚至可能是一个库吗?)

python

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

将Common Lisp中的宏参数视为(区分大小写)字符串

(这是其中一个似乎应该如此简单的事情,我想可能有一个更好的方法)

我正在尝试定义一个宏(用于CLISP),它接受可变数量的参数作为符号(然后将其转换为区分大小写的字符串).

(defmacro symbols-to-words (&body body)
  `(join-words (mapcar #'symbol-name '(,@body))))
Run Code Online (Sandbox Code Playgroud)

将符号转换为大写字符串,而

(defmacro symbols-to-words (&body body)
  `(join-words (mapcar #'symbol-name '(|,@body|))))
Run Code Online (Sandbox Code Playgroud)

对待,@ body作为单个符号,没有扩展.

有任何想法吗?我想这可能是一个更简单的方法.

string symbols common-lisp case-sensitive

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

删除有关未选中操作的编译时警告

以下行导致编译时警告:

ArrayList<Integer> a = (ArrayList) b.clone();
Run Code Online (Sandbox Code Playgroud)

创建:

Note: MyClass.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Run Code Online (Sandbox Code Playgroud)

如何删除编译时警告?-Xlint:none和-nowarn似乎没有帮助.

编辑:我并不太关心类型安全; 在代码的上下文中,我确信类型将起作用.我只想抑制编译器警告.

java compiler-warnings

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

在Django中自动分配模型字段值

有没有办法在定义模型时自动为Django中的模型设置字段值?这可以用于存储诸如时间戳之类的东西(例如),但也可以用于创建被构造为其他的一些功能的字段.

换句话说,我正在寻找这样的东西:

class Foo(models.Model):

spam = models.CharField(max_length=2000)
my_other_field = ###?

def generate_my_other_field():
    #Some algorithm to determine the value of my_other_field
Run Code Online (Sandbox Code Playgroud)

django django-models

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

使用Git通过对第二个文件所做的更改来更新一个文件

我是git的新手; 我知道基本命令,但我不熟悉组织项目的最佳方法.

我有两个版本的文件几乎完全相同.两个文件之间的唯一区别是它们扫描特定文件的方式,并且差异仅限于一个代码区域.当我向其中添加功能时,我可以将相同的更改复制并粘贴到第二个文件中,但我想这就是良好的版本控制意味着简化.

我最好的猜测是我应该创建第二个分支(比如'branch_B')并在branch_A和branch_B中保留同名文件的副本(以便它们可以很容易地合并).但是,当我合并时,我不会最终得到主分支中两个文件的奇怪组合,而不是第二个文件的更新版本?

git

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

Perl中数组的访问器方法

我有一个对象将数组存储为实例变量.由于Perl似乎不支持这一点,我必须存储对数组的引用.但是,我无法弄清楚如何在创建这些数组后改变这些数组; 这些方法似乎只改变了本地副本.(目前,在addOwnedFile()结束时,对象数据不变).

sub new {
    my ($class) = @_;
    my @owned_files = ();
    my @shared_files = ();

    my $self = {

        #$[0] is the class
        _name => $_[1],
        _owned_files => \[],
        _shared_files => \[],        
    };
    bless $self, $class;

    return $self;
    }




#Add a file to the list of files that a user owns
sub addOwnedFile {
    my ($self, $file) = @_;
        my $ref = $self -> {_owned_files};
        my @array = @$ref;

        push(@array, $file);

        push(@array, "something");

        push(@{$self->{_owned_files}}, "something else");

        $self->{_owned_files} = …
Run Code Online (Sandbox Code Playgroud)

oop perl

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

C中的整数转换为double,产生零值

我最初有一个使用pow()的函数,我注意到它每次都返回零值.在调试时,我发现这似乎是问题的根源:

#include <math.h>
#include <stdio.h>
#include <string.h>
int foo(int n)
{
        printf("%d is number passed in \n", n);
        double base = (double) n;
        printf("%d is base \n", base);
        printf("%d is power\n", pow(base ,2));

        return (1/2 *( pow( (double) n, 2)));

}
Run Code Online (Sandbox Code Playgroud)

如果我在任何整数值(例如8)上调用foo ,则第二个printf语句每次都打印为零.(当然,第三个也是如此).不应该将double转换为int直接吗?

c math casting

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