小编Jim*_*Jim的帖子

我需要在这里重建Java吗?

我有一个ClassA在项目的各个领域使用我的许多组件和库.
现在我需要在这个类中添加一个额外的成员,但由于它不会被其他区域需要/使用,所以对extend这个类感觉不合适.
如果我添加成员ClassA而不是extending我有任何问题?一切都需要重建吗?

java oop build

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

ProcessBuilder和cmd

为什么

ProcessBuilder pb = new ProcessBuilder("cmd","/C","dir");
Run Code Online (Sandbox Code Playgroud)

工作但是

ProcessBuilder pb = new ProcessBuilder("cmd","dir");
Run Code Online (Sandbox Code Playgroud)

才不是。
我的意思是在后一种情况下cmd启动但目录列表没有发生,这是为什么?

java cmd processbuilder

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

Perl引用.我们怎么知道它是一个?

我是Perl的新手并阅读有关参考文献的内容.
我无法理解如何知道他所处理的变量是否为参考.
例如,如果我理解正确,这:
$b = $a可能是分配scalarsreferences.我们怎么知道它是哪一个?
C或者C++,我们会通过函数签名(知道*a&a**a).但是Perl没有参数的签名.
那么我们如何在代码中知道什么是引用而哪些不是?或者,如果它是对标量或数组或散列或其他引用的引用?

perl reference

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

如何从双循环处理转换为更好的东西?

我有以下设计:
我有一系列的类来处理一些对象让我们说事件.
每个类仅处理特定类型的事件.
现在当我有这些需要处理的对象/事件时,我遍历所有事件然后遍历所有处理器,直到我完成.
我做的唯一优化是,如果一个事件不适合一个类立即返回.
我怎么能改变我的设计摆脱这个O(N^2)循环?或者它可能不值得改变,这是好的吗?

更新
示例算法代码:

for(Event e:events) {  
    for(Processor p:processors) {  
        p.process(e); 
    }  
}  
Run Code Online (Sandbox Code Playgroud)

java algorithm design-patterns data-structures

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

为什么uniq -z会返回重复项?

我有文件sorted.txt:

$cat sorted.txt  
bash  
fosh  
hack  
hack  
Run Code Online (Sandbox Code Playgroud)

如果我这样做uniq:

$uniq sorted.txt  
bash  
fosh  
hack  
Run Code Online (Sandbox Code Playgroud)

如果我这样做,uniq -z我得到:

$uniq -z sorted.txt  
bash  
fosh  
hack  
hack  
Run Code Online (Sandbox Code Playgroud)

uniq -z我在复制!我期待,在输出唯一的区别uniq sorted.txtuniq -z sorted.txt是分隔符.
我为什么要重复uniq -z

unix linux shell cygwin uniq

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

短路UNION?(如果第一个子句没有结果,则只执行第二个子句)

如果我做:

SELECT * FROM A   
WHERE conditions  
UNION  
SELECT * FROM B   
WHERE conditions 
Run Code Online (Sandbox Code Playgroud)

我得到了 A的查询结果集和 B 的查询结果集的集。

有没有办法/运算符让我可以得到短路OR结果?

即获取结果,SELECT * FROM A WHERE conditions并且当这不返回任何内容时才获取SELECT * FROM B WHERE conditions?

mysql sql union resultset set

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

为什么正则表达式引擎没有回溯.*?

我试图了解以下正则表达式:
拥有:

SRC=array.c builtin.c eval.c field.c gawkmisc.c io.c main.c \  
            missing.c msg.c node.c re.c version.c
Run Code Online (Sandbox Code Playgroud)

作为多行文本,以下正则表达式无法匹配:

~$ perl -e '  
my $var = "SRC=array.c builtin.c eval.c field.c gawkmisc.c io.c main.c \  
missing.c msg.c node.c re.c version.c";  
$var =~ /^\w+=(.*(\\\n.*))/;  
print "$1\n";  
Run Code Online (Sandbox Code Playgroud)

但我不确定为什么.
我的意思是.*将匹配到行的末尾(\n).然后由于.无法匹配该行的结尾,因此匹配失败.然后,因为*是可选的不应该正则表达式引擎回溯并释放\并尝试再次匹配?
这似乎不会发生,因为后引用为空.
有人可以帮我理解这个吗?

regex linux perl backtracking nfa

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

如何测试数组的null?

我无法理解以下代码段:

perl  -e '  
my @test = undef;  
if(@test) {print "Full\n";}'  
Full  
Run Code Online (Sandbox Code Playgroud)

似乎@test虽然它被分配undef但它实际上有1个元素undef.
那么测试if的正确方法@test是什么?
if(scalar(@test) == 1 && !$test[0])对我来说似乎很奇怪

arrays perl null

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

对齐到相对布局的右侧似乎不起作用

我正在尝试将 2 个文本视图放在父容器右侧的另一个旁边。
就像是:

+++++++++++++++++++++++++++++++++++++  (parent container)  
|               TextView2 TextView1 |  
+++++++++++++++++++++++++++++++++++++    
Run Code Online (Sandbox Code Playgroud)

以下不起作用,但我不明白为什么

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="100dp"
              android:layout_height="match_parent">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:text="TEXTVIEW-1" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_alignParentRight="true"
            android:layout_toLeftOf="@id/textView1"
            android:layout_marginRight="1dp"
            android:text="TEXTVIEW-2" />

    </RelativeLayout>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

注意:100dp 只是为了说明问题

更新:
删除 android:layout_alignParentTop="true" 和 android:layout_alignParentRight="true" 后,我得到:

在此处输入图片说明

android android-relativelayout

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

使正则表达式更具可读性

我有一个这样的长reggex:
if( $var =~ /(word1|word2|word3|word4)/但实际上我有超过4个单词,它们更大.
如何在不破坏reggex的情况下添加新行以使其更具可读性?
例如

if($var =~ /(word1 |  
                  word2 |  etc
Run Code Online (Sandbox Code Playgroud)

regex perl

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