import Control.Applicative
main = print $ fmap (*2) (1,2)
Run Code Online (Sandbox Code Playgroud)
生产(1,4)
.我希望它能够生成(2,4)
但是该函数仅应用于元组的第二个元素.
更新我基本上已经基本上直接解决了这个问题.我会在一分钟内发布自己的答案..
在AS3中,您可以将常量传递给编译器
-define+=CONFIG::DEBUG,true
Run Code Online (Sandbox Code Playgroud)
并将其用于条件编译,如下所示:
CONFIG::DEBUG {
trace("This only gets compiled when debug is true.");
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找类似#ifndef的东西,所以我可以否定调试的价值并使用它来有条件地添加发布代码.我发现的唯一的解决办法,到目前为止是在条件编译文档的Adobe和因为我的调试和发布配置是相互排斥的,我不喜欢同时具有DEBUG的想法和释放常数.
此外,这种格式有效,但我假设它在运行时运行检查,这不是我想要的:
if (CONFIG::DEBUG) {
//debug stuff
}
else {
//release stuff
}
Run Code Online (Sandbox Code Playgroud)
我也考虑过做这样的事情,但它仍然不是我希望的优雅解决方案:
-define+=CONFIG::DEBUG,true -define+=CONFIG::RELEASE,!CONFIG::DEBUG
Run Code Online (Sandbox Code Playgroud)
提前致谢 :)
这是R中的一个新手问题.我正在使用R下载雅虎财务月度股票价格数据,其中从文本文件中读取股票代码名称.我正在使用循环来读取股票代码名称以下载数据并将它们放入列表中.我的问题是一些股票代码名称可能不正确,因此我的代码在遇到这种情况时会停止.我想要以下内容.
以下是我的问题的简化版本的示例代码.
library(tseries)
tckk <- c("MSFT", "C", "VIA/B", "MMM") # ticker names defined
numtk <- length(tckk);
ustart <- "2000-12-30";
uend <- "2007-12-30" # start and end date
all_dat <- list(); # empty list to fill in the data
for(i in 1:numtk)
{
all_dat[[i]] <- xxx <- get.hist.quote(instrument = tckk[i], start=ustart, end=uend, quote = c("Open", "High", "Low", "Close"), provider = "yahoo", compression = "m")
}
Run Code Online (Sandbox Code Playgroud)
代码在第三个条目处停止,但我想跳过此代码并转到"MMM".我听说过Trycatch()函数,但不知道如何使用它.
根据问题2,我希望列表的第一个元素的变量名称是"MSFTopen","MSFThigh","MSFTlow"和"MSFTclose".除了使用loop和paste()函数的组合之外,还有更好的方法吗?
最后,对于问题3,我需要一个包含三个与收盘价相对应的列的数据框.再次,我试图避免在这里循环.
谢谢.
如何在Hibernate中编写这个SQL查询?我想使用Hibernate创建查询,而不是创建数据库.
SELECT * FROM Employee e INNER JOIN Team t ON e.Id_team=t.Id_team
Run Code Online (Sandbox Code Playgroud)
我在SQLServer2008中创建了实体类,
@Entity
@Table(name="EMPLOYEE")
public class Employee
{
@Id @GeneratedValue
@Column(name="ID_EMPLOYEE")
private int id_employee;
@Column(name="SURNAME")
private String surname;
@Column(name="FIRSTNAME")
private String firstname;
@Column(name="ID_PROFESSION")
private int id_profession;
@Column(name="ID_BOSS")
private int id_boss;
@Column(name="HIRED_DATE")
private Date hired;
@Column(name="SALARY")
private double salary;
@Column(name="SALARY_ADD")
private double salary_add;
@Column(name="ID_TEAM")
private int id_team;
//setters and getters
}
@Entity
@Table(name="TEAM")
public class Team
{
@Id @GeneratedValue
@Column(name="ID_TEAM")
private int id_team;
@Column(name="TEAMNAME")
private String teamname;
@Column(name="ADDRESS")
private String …
Run Code Online (Sandbox Code Playgroud) 我想将所有数字转换为最接近的.25
所以...
5 becomes 5.00
2.25 becomes 2.25
4 becomes 4.00
3.5 becomes 3.50
Run Code Online (Sandbox Code Playgroud)
谢谢
据我所知,Java Servlets同时处理多个请求,我搜索了StackOverflow以及Google,并确认了我的想法.但是我现在很困惑,我写了一个似乎显示阻塞行为的简单servlet.
所以我有一个简单的Servlet:
public class MyServlet extends HttpServlet
{
private static final long serialVersionUID = 2628320200587071622L;
private static final Logger logger = Logger.getLogger(MyServlet.class);
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
logger.info("[doGet] Test before");
try {
Thread.sleep(60000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
logger.info("[doGet] Test after");
resp.setContentType("text/plain");
resp.getWriter().write("OK");
}
}
Run Code Online (Sandbox Code Playgroud)
然后我有2个浏览器窗口,我同时打开了我的Servlet.结果是第一个请求阻止第二个请求.日志还显示:
10:49:05,088 [http-8383-Processor14] INFO MyServlet - [doGet] Test before
10:50:05,096 [http-8383-Processor14] INFO MyServlet - [doGet] Test after
10:50:05,106 [http-8383-Processor22] INFO MyServlet …
Run Code Online (Sandbox Code Playgroud) 是否可以从内存(byte[]
或stream
或Bitmap
)加载图片而不将其保存到磁盘?
这是我用来将byte[]
数组转换为Bitmap
:
unsafe
{
fixed (byte* ptr = Misc.ConvertFromUInt32Array(image))
{
Bitmap bmp = new Bitmap(200, 64, 800, PixelFormat.Format32bppRgb, new IntPtr(ptr));
bmp.RotateFlip(RotateFlipType.Rotate180FlipX);
bmp.MakeTransparent(Color.Black);
bmp.Save("test.bmp");
}
}
Run Code Online (Sandbox Code Playgroud)
而不是使用Bmp.save()
,我可以把Bitmap
图片框放在我的表格上吗?
您什么时候需要使用Cell或RefCell?似乎有许多其他类型选择适合代替这些,文档警告说使用RefCell
是一种"最后的手段".
使用这些类型是" 代码味 "吗?任何人都可以展示一个例子,使用这些类型比使用其他类型更有意义,例如Rc
甚至Box
?
我有一个内部可变性的结构.
use std::cell::RefCell;
struct MutableInterior {
hide_me: i32,
vec: Vec<i32>,
}
struct Foo {
//although not used in this particular snippet,
//the motivating problem uses interior mutability
//via RefCell.
interior: RefCell<MutableInterior>,
}
impl Foo {
pub fn get_items(&self) -> &Vec<i32> {
&self.interior.borrow().vec
}
}
fn main() {
let f = Foo {
interior: RefCell::new(MutableInterior {
vec: Vec::new(),
hide_me: 2,
}),
};
let borrowed_f = &f;
let items = borrowed_f.get_items();
}
Run Code Online (Sandbox Code Playgroud)
产生错误:
error[E0597]: borrowed value does not live long enough
--> …
Run Code Online (Sandbox Code Playgroud) encapsulation contravariance mutability rust interior-mutability
在Rust中,有两种可能性来引用
借用,即参考,但不允许改变参考目的地.该&
运营商借用值所有权.
可变地借用,即参考改变目的地.该&mut
运营商性情不定地借用一个值所有权.
首先,任何借入必须持续不超过所有者的范围.其次,您可能拥有这两种借款中的一种或另一种,但不能同时使用这两种:
- 一个或多个
&T
资源的引用(),- 一个可变的引用(
&mut T
).
我相信引用一个引用是创建一个指向值的指针并通过指针访问该值.如果存在更简单的等效实现,则编译器可以优化它.
但是,我不明白什么是移动的意思以及它是如何实现的.
对于实现Copy
特征的类型,它意味着复制,例如通过从源分配结构成员,或者a memcpy()
.对于小结构或原始数据,此副本是有效的.
而对于招?
rust ×3
java ×2
apache-flex ×1
bitmap ×1
c# ×1
concurrency ×1
finance ×1
flash ×1
functor ×1
haskell ×1
hibernate ×1
hql ×1
image ×1
javascript ×1
mutability ×1
ownership ×1
r ×1
rounding ×1
servlets ×1
tuples ×1