我正在尝试做类似以下的事情
def defined(hash: HashMap[T, U], key: [T) {
hash.contains(key)
}
Run Code Online (Sandbox Code Playgroud)
上面的代码不能编译,因为我的语法不正确.是否可以检查未知类型的HashMap是否包含给定密钥?
在下面我可以克隆Hashtable而不是实际值
val myHash = new HashMap[String, Int]
myHash.put("A", 4)
println(myHash("A").clone()) // fail
myHash.clone() // works
Run Code Online (Sandbox Code Playgroud)
我得到错误无法解析符号克隆
例如,假设我有
class Parent {
def method() {
var myvar = "test"
}
}
Run Code Online (Sandbox Code Playgroud)
是否有任何机制可以访问子类中的myvar?
编辑:
我正在尝试构建一个以现有语言为模型的DSL.该语言具有诸如此类的功能
onTrade {
if (price == ...) // will compile
}
onDayStart {
if (price == ...) // will not compile
}
Run Code Online (Sandbox Code Playgroud)
就好像price是一个全局变量,但是有编译时检查以确保它只在正确的上下文中使用.我在想一种模拟方法,就是让局部变量可以在子类中重写.就像是
// Parent
onTrade {
var price = ...
}
// Child
onTrade {
if (price == ...)
if (somethingelse == ...) // will not compile
}
Run Code Online (Sandbox Code Playgroud) 命令
grep shutting log.log
Run Code Online (Sandbox Code Playgroud)
没有回报.
我的脚本如下
#!/bin/bash
FAIL=`grep shutting log.log`
if [ "$FAIL"="Binary file log.log matches" ]; then
echo FOUND
else
echo NOT FOUND
fi
Run Code Online (Sandbox Code Playgroud)
我期待找不到但是找到了
以下打印我的消息
setTimeout(console.log('delayed hello world'), 10000);
Run Code Online (Sandbox Code Playgroud)
这有点违反直觉.因为我的信息会立即打印出10秒结束时发生的事情?
例如,假设我有以下架构
var Comments = new Schema({
title : String
, body : String
, date : Date
});
var BlogPost = new Schema({
author : ObjectId
, title : String
, body : String
, buf : Buffer
, date : Date
, comments : [Comments]
, meta : {
votes : Number
, favs : Number
}
});
Run Code Online (Sandbox Code Playgroud)
我知道如何通过评论属性查询BlogPost.如何进行查询,例如获取最新的五条评论?即反向排序ObjectId的所有注释,然后得到前五个结果.我是否需要将自己的评论集合分成这样做?
例如,我正在尝试按如下方式读取文件
fd = open('mydb.dbf', 'rb')
print(fd.read(1))
Run Code Online (Sandbox Code Playgroud)
输出是:
B '\ X03'
我只希望'\ x03'.额外角色来自哪里?
标准是:
it = iter(sequence)
for value in it:
print value
Run Code Online (Sandbox Code Playgroud)
我正在使用第三方库,它返回一个迭代器,第一个值是标题,第二个值是元数据,其余值是记录.我尝试过类似的东西:
db = dbfreader(f)
headers = db.next()
spec = db.next()
record = db.next()
while record:
print record
record = db.next()
Run Code Online (Sandbox Code Playgroud)
但这会导致StopIteration错误
例如,假设我有
$input = array(0, 1, 2, 3, 4, 5, 6, 7);
Run Code Online (Sandbox Code Playgroud)
如何删除元素5并插入位置2,留下我
0,1,5,2,3,4,6,7
我有以下方法将String转换为Date对象
public Date convertTime(String time) {
SimpleDateFormat parser = new SimpleDateFormat("d/M/y HH:mm:ss.S");
try {
return parser.parse(time);
}
catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我有以下方法将其转换回来
public String dateToTimeMillis(Date date) {
//StringBuffer formatted = new StringBuffer();
SimpleDateFormat parser = new SimpleDateFormat("HH:mm:ss.S");
try {
String formatted = parser.format(date);
return formatted;
}
catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
以下测试代码
TraderLib lib = new TraderLib();
Date d1 = lib.convertTime("01/11/2011 10:41:09.045");
System.out.println(lib.dateToTimeMillis(d1));
Run Code Online (Sandbox Code Playgroud)
返回10:41:09.45
我如何保留0?