小编Lai*_*uan的帖子

如何避免内部类名称冲突?

如果我有一个类A和一个类BA内部类.我还有另一堂课B.它不在A.

class A {
    ...
    class B {
        ...
    }
    ...
}

class B {
    ...
}
Run Code Online (Sandbox Code Playgroud)

如何使外部的实例BA

class A {
    B name = new B();
}
Run Code Online (Sandbox Code Playgroud)

将得到一个内在的实例B.

java inner-classes

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

Linux中的文件互斥是什么?怎么实现呢?

在Windows中,如果我用MS Word打开文件,则尝试删除它.系统将阻止我.它可以防止文件被删除.

Linux中有类似的机制吗?在编写自己的程序时如何实现它?

linux filesystems

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

我可以使用git-svn初始化并获取文件,但无法克隆

我读了手册,它说的cloneRuns init and fetch.

但我试过这个:

git svn clone -T http://svn.felspar.com/public/m-intercept/trunk/
Run Code Online (Sandbox Code Playgroud)

然后得到:

fileparse():在/ usr/lib/git-core/git-svn第405行需要一个有效的路径名

并没有下载任何文件.

但是当我使用时:

git svn init http://svn.felspar.com/public/m-intercept/trunk/
git svn fetch
Run Code Online (Sandbox Code Playgroud)

行.它完美地运作.我使用完全相同的URL.

svn git git-svn

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

为什么字典需要那些'iter'方法?

假设mydict是一个Python字典.

mydict = {'a': 1, 'b': 2}
Run Code Online (Sandbox Code Playgroud)

我可以items用来迭代它的元素:

for k,v in mydict.items():
    print k,v
Run Code Online (Sandbox Code Playgroud)

或使用iteritems:

for k,v in mydict.iteritems():
    print k,v
Run Code Online (Sandbox Code Playgroud)

有什么不同?我认为python的哲学是"只有一种方法"吗?

python iterator

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

ruby - 懒洋洋地遍历一个数组

我想迭代一个数组的一部分.例如,我尝试打印除第一个元素之外的所有元素:

array[1..-1].each {|e| puts e}
Run Code Online (Sandbox Code Playgroud)

array[1..-1]建立一个新的Array.如果array非常巨大,这是浪费.另一种直截了当的方法:

(1...array.size).each { |i| puts array[i] }
Run Code Online (Sandbox Code Playgroud)

有用.但我想知道是否有一些更优雅的技巧.

ruby iteration foreach

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

ruby - 无法写入守护进程中的日志

通常我可以写日志Logger:

//abc.rb
require 'logger'
logger = Logger.new('foo.log')

$./abc.rb
Run Code Online (Sandbox Code Playgroud)

但在Daemons我得到一个权限错误:

//xyz.rb
require 'logger'
require 'daemons'

Daemons.run_proc('xyz') do
  logger = Logger.new('foo.log')
end

$./xyz.rb
/home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:599:in `initialize': Permission denied - foo.log (Errno::EACCES)
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:599:in `open'
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:599:in `create_logfile'
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:594:in `open_logfile'
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:549:in `initialize'
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:314:in `new'
from /home/raincole/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:314:in `initialize'
Run Code Online (Sandbox Code Playgroud)

我跑abc.rb,并xyz.rb在同一目录下,并用相同的身份.为什么不能像另一个一样登录?

ruby logging daemon daemons

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

amqp中突然发生PossibleAuthenticationFailureError

我正在使用红宝石amqp宝石.我运行了一个AMQP.start事件循环,但it raised a在循环期间"突然发生了PossibleAuthenticationFailureError".

  AMQP.start(amqp_config) do |connection|
    channel = AMQP::Channel.new connection
    channel.on_error do |channel, channel_close|
      puts "Oops... a channel-level exception: code = #{channel_close.reply_code}, message = #{channel_close.reply_text}"
    end

    my_worker = MyWorker.new
    my_worker.start
  end

[amqp] Detected TCP connection failure
/home/raincole/.rvm/gems/ruby-1.9.3-p125/gems/amq-client-0.9.3/lib/amq/client/async/adapters/event_machine.rb:164:in `block in initialize': AMQP broker closed TCP connection before authentication succeeded: this usually means authentication failure due to misconfiguration. Settings are {:host=>"localhost", :port=>5672, :user=>"guest", :pass=>"guest", :vhost=>"/", :timeout=>nil, :logging=>false, :ssl=>false, :broker=>nil, :frame_max=>131072} (AMQP::PossibleAuthenticationFailureError)
Run Code Online (Sandbox Code Playgroud)

怪异的部分是,我的工作人员已经收到一些消息之前,我得到了PossibleAuthenticationFailureError.看起来配置应该是正确的(我一遍又一遍地检查). …

ruby amqp

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

内置的方式来模拟一个没有副作用的 while 循环

通常while循环的样板看起来像(r是我想要的结果,p是预测器:

var r, p;
while(p()) {
  (r, p) = compute(r)
}
Run Code Online (Sandbox Code Playgroud)

我可以将其转换为递归以摆脱var

def f(r) = {
  val (nr, p) = compute(r)
  if(p()) nr
  else f(nr)
}
Run Code Online (Sandbox Code Playgroud)

有没有内置的方法来实现这种逻辑?我知道Iterator.continually,但似乎仍然需要var存储副作用。

functional-programming scala

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

为什么ViewHolder模式有效?

我今天学习了Android的ArrayAdapter,发现有一个commom模式,它使用ViewHolder来保存Views的引用,而不是每次调用findViewById.

但它是如何工作的?适配器通常用于显示View(Group)的列表,如果我缓存View,为什么它们都没有引用最旧的?

android design-patterns view

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

如何缓存/预先计算某些东西(没有全局变量)?

我想要做的是在两个处理程序之间发送数据.

element.onmousedown = function() {
    data = precalculate();
}

element.onmouseup = function() {
    dosomething(data);
}
Run Code Online (Sandbox Code Playgroud)

如果它data是一个全局变量,它的工作原理.人们说全球变量是邪恶的.但我不知道如果没有它.

或者我误解了"全局变量"?

javascript

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