Redian新闻
>
前辈给个意见吧,要不要重新申请学校?
avatar
前辈给个意见吧,要不要重新申请学校?# Engineering - 工程
G*A
1
俺就没有一天是歇着的?研究玩相机买鸡粪,买完鸡粪灌香肠,做蛋塔,腌雪里红今
天又被老A 的葱花卷刺激的做了一大锅葱花卷和肉花卷。不能再受刺激了。想问问
这是什么癖吗?你们有谁也这样?
avatar
q*u
2
【 以下文字转载自 JobHunting 讨论区 】
发信人: yinyueyouge (隐约有歌), 信区: JobHunting
标 题: Re: java enclosure是什么-今天被hm问倒了
发信站: BBS 未名空间站 (Fri Oct 22 09:27:57 2010, 美东)
感觉对方是在问 Closure。
这个是 Java 对 Lambda 表达式的实现。Java 7 已经确定在语法上支持这个。
Java 6或者以前的版本只能靠 interface + anonymous class 来实现。
若是做过 functional programming(比如haskell),应该对 Lamdba 表达
式比较熟悉。
从C++的角度来看,就是 function pointer,但是它是 Strongly Typed。
举例代码来说明。假设要对二叉树遍历,代码很好写,比如:
void inOrder(Tree tree) {
if (tree != null) {
inOrder(tree.getLeft());
System.out.println(tree.getValue());
inOrder(tree.getRight());
}
}
但是如上的函数只是把Node的值打印到终端。若是要变得generic一点,要遍历的
过程中,能引入一个函数,对每一个Node执行这个函数,该多好。这样就引入了一
个概念:能否把函数当做一个对象,传递入inOrder函数呢?
可以用如下的代码调用inOrder函数(Java 7的语法比较雷):
inOrder(tree,
#(Tree tree)(System.out.println(tree.getValue())
);
inOrder的定义要修改成:
void inOrder(Tree tree, #()(Tree tree));
一些示范代码:
之一:
#int(int x) fc; // 声明一个 variable
fc = #(int x)(x + 1); // 第一个括号是引入参数,第二个括号是代码
int x = fc(4); // 4加1,得5,然后赋值给x
之二:
int y = #(int x)(x + 1).(3); // y = 3 + 1
住:如上的语法还不是final版本。。在Java 7出来之前一切都会有变动。
所以Closure其实包含2个部分:1是把每个函数当作对象,2是一个简化的匿名函数
的语法。
在Java 6的话,就用interface+匿名类来实现了:
interface Closure { public void invoke(T t); }
void inOrder(Tree tree, Closure closure) {
if (tree != null) {
inOrder(tree.getLeft());
closure.invoke(tree);
inOrder(tree.getRight());
}
}
执行的代码如此:
inOrder(tree, new Closure() {
public void invoke(Tree tree) {
System.out.println(tree.getValue());
}
});
Java的最初的设计,即所有函数必须属于一个对象,导致了对拉姆达表达式的支持
非常困难。写出来的代码让人非常雷。
相比之下,C#的语言就简介多了:
delegate void TraversalAction(Tree tree); // 一个函数模板
void InOrder(Tree tree, TraversalAction action) {
if (tree != null) {
InOrder(tree.getLeft());
action(tree); // 执行该函数
InOrder(tree.getRight());
}
}
执行的代码如此:
InOrder(tree,
{ tree => Console.WriteLine(tree) } // 一个代码片段
);
也可以这么执行:
// 把一个代码片段存放入variable中
var func = (TraversalAction) delegate (Tree tree) {
tree => Console.WriteLine(tree);
};
// 把func传入函数InOrder作为一个参数
InOrder(tree, func);
总结一点:拉姆达表达式就是把一个代码片段或者一个函数当作对象。该对象
可以赋值给variable,也可以作为函数的引入参数。
若是C/C++语言,最经典的例子就是qsort函数:
void qsort (
void * base,
size_t num,
size_t size,
int (*comparator)(const void*, const void*)
);
第四个参数,就是一个function pointer。在调用qsort函数的时候,可以
把另外一个函数当作参数直接调入qsort。
avatar
g*a
3
俺是今年刚来美的PhD,目前在做美国军方的某个项目,几个教授合作的。这个项目本
来是四年半的,但是由于这个项目的idea实际上不好,肯定行不通。这些老板们心知肚
明,但是因为钱的缘故还得继续做,我老板人很好,直接就和我说啦。目前情况是这个
项目由于项目leader的关系,能支撑三年,三年后肯定玩完。所以我在想,既然这个没
啥前途,要不要换啊,因为是RA,要换的话只能换学校啦。。。
其实老板人还好,让我好好考虑,努力点争取三年毕业,但是我担心即使他同意我毕业
,到时候很难通过学术委员会那一关啊,毕竟这个项目的idea有些硬伤的。。。
前辈们能不能给些意见啊。。。谢谢啦,呵呵
avatar
D*1
4
我。虽然你这些我一样都不会
你们自己灌香肠,腊肠?拿什么可以交换?

【在 G********A 的大作中提到】
: 俺就没有一天是歇着的?研究玩相机买鸡粪,买完鸡粪灌香肠,做蛋塔,腌雪里红今
: 天又被老A 的葱花卷刺激的做了一大锅葱花卷和肉花卷。不能再受刺激了。想问问
: 这是什么癖吗?你们有谁也这样?

avatar
w*g
5
good to learn. thanks
avatar
G*A
6
你随时来随时有要不要现在就过来一趟?昨天鱼缸教我做的。灰常好吃。

【在 D*******1 的大作中提到】
: 我。虽然你这些我一样都不会
: 你们自己灌香肠,腊肠?拿什么可以交换?

avatar
D*1
7
谢谢。我的丝瓜MS多借了几颗,等方便时提着过去叨扰

【在 G********A 的大作中提到】
: 你随时来随时有要不要现在就过来一趟?昨天鱼缸教我做的。灰常好吃。
avatar
c*p
8
正常,这才是开始
avatar
D*1
9
好像只有南加的如此? LOL

【在 c***p 的大作中提到】
: 正常,这才是开始
avatar
c*p
10
也欢迎领着丝瓜来叨扰

【在 D*******1 的大作中提到】
: 谢谢。我的丝瓜MS多借了几颗,等方便时提着过去叨扰
avatar
G*A
11
lol

【在 c***p 的大作中提到】
: 也欢迎领着丝瓜来叨扰
avatar
D*1
12
你过来吧,丝瓜,冬瓜,还有熊猫家的腊肠。。。最好等到小西红柿来挖枣树,刚刚拜
访熊猫领导的时候,还有鱼缸,老三,山农。还有谁?
强烈建议男家的菜农们聚一聚,找一个周末到老三家旁边的半岛吃早茶如何?

【在 c***p 的大作中提到】
: 也欢迎领着丝瓜来叨扰
avatar
c*p
13
in!

【在 D*******1 的大作中提到】
: 你过来吧,丝瓜,冬瓜,还有熊猫家的腊肠。。。最好等到小西红柿来挖枣树,刚刚拜
: 访熊猫领导的时候,还有鱼缸,老三,山农。还有谁?
: 强烈建议男家的菜农们聚一聚,找一个周末到老三家旁边的半岛吃早茶如何?

avatar
f*i
14
买完鸡粪灌香肠。。。

【在 G********A 的大作中提到】
: 俺就没有一天是歇着的?研究玩相机买鸡粪,买完鸡粪灌香肠,做蛋塔,腌雪里红今
: 天又被老A 的葱花卷刺激的做了一大锅葱花卷和肉花卷。不能再受刺激了。想问问
: 这是什么癖吗?你们有谁也这样?

avatar
F*k
15
叫上我啊,据说有可能是老乡的说

【在 D*******1 的大作中提到】
: 谢谢。我的丝瓜MS多借了几颗,等方便时提着过去叨扰
avatar
c*r
16
半岛人太多,每次排长队
像灾荒似的

【在 D*******1 的大作中提到】
: 你过来吧,丝瓜,冬瓜,还有熊猫家的腊肠。。。最好等到小西红柿来挖枣树,刚刚拜
: 访熊猫领导的时候,还有鱼缸,老三,山农。还有谁?
: 强烈建议男家的菜农们聚一聚,找一个周末到老三家旁边的半岛吃早茶如何?

avatar
g*e
17
你对这边咋这么熟?

【在 c*****r 的大作中提到】
: 半岛人太多,每次排长队
: 像灾荒似的

avatar
c*r
18
不是跟你讲我是半个加州人

【在 g***e 的大作中提到】
: 你对这边咋这么熟?
avatar
g*e
19
记得你是浙江的,在东海岸。你还常驻LA?

【在 c*****r 的大作中提到】
: 不是跟你讲我是半个加州人
avatar
l*g
20
熊猫阿,你看如果断章取义的话,你说的是“鸡粪灌香肠”:)
你兴致太高了,我最近连浇水都懒了。
蛋塔不爱吃,包子花卷的风几年前已经刮过了,
香肠倒是想了很久没动作,冬天到了可以弄了。
不过那里弄肠衣阿??

【在 G********A 的大作中提到】
: 俺就没有一天是歇着的?研究玩相机买鸡粪,买完鸡粪灌香肠,做蛋塔,腌雪里红今
: 天又被老A 的葱花卷刺激的做了一大锅葱花卷和肉花卷。不能再受刺激了。想问问
: 这是什么癖吗?你们有谁也这样?

avatar
c*r
21
LA比较熟
去过你们学校几次

【在 g***e 的大作中提到】
: 记得你是浙江的,在东海岸。你还常驻LA?
avatar
l*g
22
你是兰德???

【在 c***p 的大作中提到】
: in!
avatar
l*z
23
那你是没买那个套机了? 也不给我更新一下。 没买好,觉得你以后会后悔。

【在 G********A 的大作中提到】
: 俺就没有一天是歇着的?研究玩相机买鸡粪,买完鸡粪灌香肠,做蛋塔,腌雪里红今
: 天又被老A 的葱花卷刺激的做了一大锅葱花卷和肉花卷。不能再受刺激了。想问问
: 这是什么癖吗?你们有谁也这样?

avatar
G*A
24
诶,是噢,JF香肠,回头再读一遍笑死了。肠衣是鱼缸带来的,据说是大华买的,细细
的用盐腌的。

【在 l********g 的大作中提到】
: 熊猫阿,你看如果断章取义的话,你说的是“鸡粪灌香肠”:)
: 你兴致太高了,我最近连浇水都懒了。
: 蛋塔不爱吃,包子花卷的风几年前已经刮过了,
: 香肠倒是想了很久没动作,冬天到了可以弄了。
: 不过那里弄肠衣阿??

avatar
G*A
25
恩,分析了一下你的话然后问了一下同事,觉着不能光顾眼前。准备买7D的,昨天被师傅说我烧钱。要我索性买无敌兔。那也太贵了。

【在 l****z 的大作中提到】
: 那你是没买那个套机了? 也不给我更新一下。 没买好,觉得你以后会后悔。
avatar
l*z
26
没听谁说要你上无敌兔啊, 都是玩笑话把。

师傅说我烧钱。要我索性买无敌兔。那也太贵了。

【在 G********A 的大作中提到】
: 恩,分析了一下你的话然后问了一下同事,觉着不能光顾眼前。准备买7D的,昨天被师傅说我烧钱。要我索性买无敌兔。那也太贵了。
avatar
c*p
27
只有兰德才能去半岛??

【在 c***p 的大作中提到】
: in!
avatar
g*e
28
南加人丁兴旺啊,等聚会照片,呵呵
avatar
T*m
29
7D 也挺贵,光机身就得1600吧?
谁是你师傅?是第一个说你嘴皮厉害的那个?

师傅说我烧钱。要我索性买无敌兔。那也太贵了。

【在 G********A 的大作中提到】
: 恩,分析了一下你的话然后问了一下同事,觉着不能光顾眼前。准备买7D的,昨天被师傅说我烧钱。要我索性买无敌兔。那也太贵了。
avatar
G*A
30
拜你你不收。

【在 T*******m 的大作中提到】
: 7D 也挺贵,光机身就得1600吧?
: 谁是你师傅?是第一个说你嘴皮厉害的那个?
:
: 师傅说我烧钱。要我索性买无敌兔。那也太贵了。

avatar
T*m
31
可惜俺只是个种地的农民啊!

【在 G********A 的大作中提到】
: 拜你你不收。
avatar
G*A
32
扯,你当初明明是嫌弃我技术差设备烂。还是豆妈出来圆了俺的场。

【在 T*******m 的大作中提到】
: 可惜俺只是个种地的农民啊!
avatar
T*m
33
那儿的事!不信,你去问豆妈。

【在 G********A 的大作中提到】
: 扯,你当初明明是嫌弃我技术差设备烂。还是豆妈出来圆了俺的场。
avatar
c*p
34
过来喊师姐先

【在 G********A 的大作中提到】
: 拜你你不收。
avatar
G*A
35
你要我喊你还是要游士喊我?

【在 c***p 的大作中提到】
: 过来喊师姐先
avatar
c*p
36
喊我啊
游士的开山大弟子啊

【在 G********A 的大作中提到】
: 你要我喊你还是要游士喊我?
avatar
G*A
37
会乱辈分,游士叫过我师妹虽然还没相机。

【在 c***p 的大作中提到】
: 喊我啊
: 游士的开山大弟子啊

avatar
l*z
38
全都乱套了, 人家游士称熊猫是师妹来着。。。。。

【在 c***p 的大作中提到】
: 喊我啊
: 游士的开山大弟子啊

avatar
l*z
39
哈哈,我听到过这个

【在 G********A 的大作中提到】
: 会乱辈分,游士叫过我师妹虽然还没相机。
avatar
c*p
40
啊,那我不是辈分太低了?亏大了

【在 G********A 的大作中提到】
: 会乱辈分,游士叫过我师妹虽然还没相机。
avatar
l*g
41
这样,鱼缸tx,
上大华买肠衣,咋说呢?
就说中文肠衣可以么?
什么时候都有么?还是有啥要求?
对了,回来还需要加工么?
小时候我家用的回来还得自己刮什么的:(

【在 G********A 的大作中提到】
: 诶,是噢,JF香肠,回头再读一遍笑死了。肠衣是鱼缸带来的,据说是大华买的,细细
: 的用盐腌的。

avatar
l*g
42
人家招呼说的是兰的聚会阿。

【在 c***p 的大作中提到】
: 只有兰德才能去半岛??
avatar
F*k
43
肠衣叫sausage casing,一般在卖肉的边上,一盒十几根肠衣大概7、8块钱。
拿回来扔冰箱冷藏就行,用的时候取出来泡水洗干净,用多少取多少,不要泡太多。5
磅肉大概两根中等长短的肠衣就够了。一次用不完多放点盐腌着放ziplock。
如果冷冻了,拿出来要自然化冻,不然肠衣很容易破。

【在 l********g 的大作中提到】
: 这样,鱼缸tx,
: 上大华买肠衣,咋说呢?
: 就说中文肠衣可以么?
: 什么时候都有么?还是有啥要求?
: 对了,回来还需要加工么?
: 小时候我家用的回来还得自己刮什么的:(

avatar
g*o
44
报名!最好在星期天!

【在 c***p 的大作中提到】
: in!
avatar
a*a
45
最近一句听得我脑海凉飕飕的

【在 l****z 的大作中提到】
: 那你是没买那个套机了? 也不给我更新一下。 没买好,觉得你以后会后悔。
avatar
l*z
46
这又是想起哪出了?

【在 a***a 的大作中提到】
: 最近一句听得我脑海凉飕飕的
avatar
G*A
47
你還沒買吧?

【在 a***a 的大作中提到】
: 最近一句听得我脑海凉飕飕的
avatar
a*a
48
差点看成"上了天花板"
还说呢, 提着电锯飞檐走壁的熊猫?
avatar
c*p
49
v5! lol

【在 a****a 的大作中提到】
: 差点看成"上了天花板"
: 还说呢, 提着电锯飞檐走壁的熊猫?

avatar
D*1
50
笑死。聪明机灵如小杯子者,竟也吃了如此大亏

【在 c***p 的大作中提到】
: 啊,那我不是辈分太低了?亏大了
avatar
G*A
51
LOL,先灌鸡粪香肠接着上天花板飞檐走壁这是什么形象

【在 a****a 的大作中提到】
: 差点看成"上了天花板"
: 还说呢, 提着电锯飞檐走壁的熊猫?

avatar
T*U
52
胖比是魔鬼。
avatar
a*a
53
胖比是啥玩艺

【在 T*U 的大作中提到】
: 胖比是魔鬼。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。