小编dar*_*mkd的帖子

当其名称与参数变量相同时,调用实例变量

我有这个代码:

class Foo {
 int x = 12;

public static void go(final int x) {

    System.out.println(x);

}
}
Run Code Online (Sandbox Code Playgroud)

参数final x和实例x具有相同的名称.如果我想在go()方法中使用它,我将如何引用实例变量x = 12,因为它的名称与参数变量相同?

java static naming-conventions

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

是否有一个Ruby快捷方式来调用方法链的同名?

说我有

class A
end

class B < A
end

p B.superclass.superclass.superclass # => BasicObject
Run Code Online (Sandbox Code Playgroud)

有没有什么方法可以指定类似重复运算符的东西,而不是调用.superclass 3次,基本上会说这个方法调用x次?

ruby

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

Ruby'通过价值'澄清

好的,所以Ruby是'按值传递'.但是,如何在Ruby中精确定义"按引用传递"和"按值传递"?我用过这个答案传递参考值和传递值之间有什么区别?根据它,Ruby似乎是一个混合......

从技术上讲,Ruby似乎是"按值传递",区别在于当您将值传递给方法时该值不会获得COPIED.如果我们定义"value"=对象,并且"reference"=指向该对象的引用变量,那么"通过引用传递"是否有意义,如果它等同于"传递指向特定对象的引用变量"?然后,一旦传递了"引用",该方法就不会对对象进行COPY,而实际上具有可以直接操作的ORIGINAL对象本身(由变量引用).如我错了请纠正我.

编辑:我知道这个问题Ruby是通过引用还是通过值传递?但不同的人似乎对那里的参考/价值有不同的定义.

ruby

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

Array.prototype.join.call在后台为字符串做了什么?

var a = "foo";
var c = Array.prototype.join.call( a, "-" ); // 'f-o-o'
Run Code Online (Sandbox Code Playgroud)

第二行代码如何工作?我没有看到任何字符串转换为数组然后再转换回来,这是在后台发生的吗?我遇到过这种代码,这很奇怪,一个接受字符串的数组方法.

javascript

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

是否存在“浮流”?

当我有一些简单的元素漂浮时,如本例所示:http ://jsfiddle.net/2zpqyLt0/

div {
  width: 100px;
  height: 100px;
}
.element1 {
  background: rgb(211, 206, 61);
  float: left;
}
.element2 {
  background: rgb(85, 66, 54);
  float: left;
}
.element3 {
  background: rgb(247, 120, 37);
  float: left;
}
Run Code Online (Sandbox Code Playgroud)
<div class="element1"></div>
<div class="element2"></div>
<div class="element3"></div>
Run Code Online (Sandbox Code Playgroud)

它们彼此相邻地堆叠在一起。据我了解,当您“浮动”一个元素时,它就脱离了文档的正常流程。文档正常流中(仍然)的元素不知道该元素存在,因此它们可以与其重叠。但是其他浮动元素呢?看起来他们彼此认识并且处于某种“浮动流”中,否则如果他们不认识,他们就会全部重叠并最终出现在左侧边缘。是否有一个术语来描述这种“浮动类型的流”,其中浮动元素由于某种原因知道它们存在?

html css

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

Ruby:为什么在类nil中定义了一个实例变量?

class Something
  @b = [4432]
  def screen
    puts @b.class
  end
end
s = Something.new
s.screen
Run Code Online (Sandbox Code Playgroud)

输出'Nilclass'.想知道,为什么在类中定义的实例变量总是NilClass的一部分?

ruby

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

Ruby - 在初始化后立即修改Struct属性

假设我有:

Book = Struct.new(:title, :content)
book = Book.new('harry potter', 'a bunch of content here')
p book.title #=> harry potter
Run Code Online (Sandbox Code Playgroud)

我想要的最后一行是"哈利波特".我知道我可以这样做:

Book = Struct.new(:title, :content) do
  def capitalized_title
    self.title.gsub(/\S+/, &:capitalize)
  end
end
Run Code Online (Sandbox Code Playgroud)

然后调用capitalized_title,但我想要的是不必创建一个单独的方法,而是有一些方法当你将"title"分配给一个新的Book对象时,标题会立即大写.我想是某种钩子方法.

ruby

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

在C#中委托合并

假设我在C#中的一个类中有一个委托字段:

public Action TrainsAreComing;
Run Code Online (Sandbox Code Playgroud)

在某些情况下,我可以做到这一点:

TrainsAreComing = FirstSubscriber;
Run Code Online (Sandbox Code Playgroud)

然后:

TrainsAreComing += SecondSubscriber
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一些SO答案,人们说这句话转化为:

 TrainsAreComing += (Action)Delegate.Combine(TrainsAreComing, new Action(SecondSubscriber));
Run Code Online (Sandbox Code Playgroud)

我发现这不是真的,因为在这里你实际上是在组合FirstSubscriber + FirstSubscriber + SecondSubscriber,这不是什么TrainsAreComing += SecondMethod(只是将FirstSubscriber与SecondSubscriber结合起来).

那么到底发生了什么在后台,你会怎么写的去加糖的版本TrainsAreComing += SecondMethod使用Delegate.Combine

c#

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

Ruby .split行为不一致

假设我有这个:

a = "|hello"
Run Code Online (Sandbox Code Playgroud)

如果我做:

a.split("|") #=> ["", "hello"]
Run Code Online (Sandbox Code Playgroud)

现在说我有:

b = "hello|"
Run Code Online (Sandbox Code Playgroud)

如果我做:

b.split("|") #=> ["hello"]
Run Code Online (Sandbox Code Playgroud)

为什么会这样?我期待结果["hello", ""],类似于第一个例子.这种split方法工作不一致.或者是否有一些我不了解的内在工作?

ruby

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

将数字转换为数十,数百,数千

我需要一个给定数字(例如123)的函数,该函数将输出数组[100,20,3]。我已经尝试过类似的事情(从另一个关于SO的问题中借来的):

function separateNumberIntoUnits(n) {
    var arr = [];
    var i = 10;

    while (n > i / 10)
    {
        arr.unshift(n % i - n % (i / 10));
        i *= 10;
    }

    return arr;
}
Run Code Online (Sandbox Code Playgroud)

它适用于除10、100等以外的所有数字。我试图弄清楚发生了什么,但是数学不是我的强项...

如果有更有效的方法可以执行此操作,请随时编写自己的解决方案。

javascript numbers

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

标签 统计

ruby ×5

javascript ×2

c# ×1

css ×1

html ×1

java ×1

naming-conventions ×1

numbers ×1

static ×1