小编Pet*_*all的帖子

为什么2元组Functor实例仅将该函数应用于第二个元素?

import Control.Applicative

main = print $ fmap (*2) (1,2)
Run Code Online (Sandbox Code Playgroud)

生产(1,4).我希望它能够生成(2,4)但是该函数仅应用于元组的第二个元素.

更新我基本上已经基本上直接解决了这个问题.我会在一分钟内发布自己的答案..

haskell tuples functor

34
推荐指数
3
解决办法
6745
查看次数

条件编译"其他"

在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)

提前致谢 :)

apache-flex flash actionscript-3

28
推荐指数
3
解决办法
8756
查看次数

在R中下载雅虎股票价格

这是R中的一个新手问题.我正在使用R下载雅虎财务月度股票价格数据,其中从文本文件中读取股票代码名称.我正在使用循环来读取股票代码名称以下载数据并将它们放入列表中.我的问题是一些股票代码名称可能不正确,因此我的代码在遇到这种情况时会停止.我想要以下内容.

  1. 如果不正确,请跳过自动收报机名称.
  2. 列表中的每个元素都是一个数据帧.我希望将自动收录器名称附加到元素数据帧中的变量名称.
  3. 我需要一种有效的方法来创建一个以收盘价为变量的数据框.

以下是我的问题的简化版本的示例代码.

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,我需要一个包含三个与收盘价相对应的列的数据框.再次,我试图避免在这里循环.

谢谢.

finance r

27
推荐指数
3
解决办法
6万
查看次数

HQL Hibernate INNER JOIN

如何在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)

java hibernate hql

27
推荐指数
3
解决办法
12万
查看次数

舍入到最近的.25 javascript

我想将所有数字转换为最接近的.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)

谢谢

javascript rounding

26
推荐指数
5
解决办法
2万
查看次数

Servlet似乎同步处理多个并发浏览器请求

据我所知,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)

java concurrency servlets

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

如何将图像放在Bitmap的图片框中

是否可以从内存(byte[]streamBitmap)加载图片而不将其保存到磁盘?

这是我用来将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图片框放在我的表格上吗?

c# image bitmap

23
推荐指数
2
解决办法
8万
查看次数

Cell或RefCell是最佳选择的情况

您什么时候需要使用Cell或RefCell?似乎有许多其他类型选择适合代替这些,文档警告说使用RefCell是一种"最后的手段".

使用这些类型是" 代码味 "吗?任何人都可以展示一个例子,使用这些类型比使用其他类型更有意义,例如Rc甚至Box

rust interior-mutability

22
推荐指数
3
解决办法
5355
查看次数

如何在不破坏封装的情况下返回对RefCell内部内容的引用?

我有一个内部可变性的结构.

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

21
推荐指数
3
解决办法
2487
查看次数

什么是Rust中的移动语义?

在Rust中,有两种可能性来引用

  1. 借用,即参考,但不允许改变参考目的地.该&运营商借用值所有权.

  2. 可变地借用,即参考改变目的地.该&mut运营商性情不定地借用一个值所有权.

有关借用规则Rust文档说:

首先,任何借入必须持续不超过所有者的范围.其次,您可能拥有这两种借款中的一种或另一种,但不能同时使用这两种:

  • 一个或多个&T资源的引用(),
  • 一个可变的引用(&mut T).

我相信引用一个引用是创建一个指向值的指针并通过指针访问该值.如果存在更简单的等效实现,则编译器可以优化它.

但是,我不明白什么是移动的意思以及它是如何实现的.

对于实现Copy特征的类型,它意味着复制,例如通过从源分配结构成员,或者a memcpy().对于小结构或原始数据,此副本是有效的.

而对于

这个问题不是什么是移动语义的重复因为Rust和C++是不同的语言,移动语义在两者之间是不同的.

ownership move-semantics rust

21
推荐指数
2
解决办法
5734
查看次数