小编bgu*_*uiz的帖子

C#:抽象类需要实现接口吗?

我在C#中的测试代码:

namespace DSnA
{
    public abstract class Test : IComparable
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

导致以下编译器错误:

error CS0535: 'DSnA.Test' does not implement interface member
'System.IComparable.CompareTo(object)'
Run Code Online (Sandbox Code Playgroud)

由于该类Test是一个抽象类,为什么编译器要求它实现接口?这个要求不应该仅仅是具体课程的必修课吗?

c# syntax abstract-class interface

124
推荐指数
3
解决办法
5万
查看次数

如何在Python中避免明确的"自我"?

我通过一些pygame教程学习Python .

在那里我发现了关键字self的广泛使用,并且来自主要的Java背景,我发现我一直忘记键入self.例如,而不是self.rect.centerx我要输入rect.centerx,因为对我来说,rect已经是类的成员变量.

对于这种情况,我可以想到的Java并行是必须使用前缀对成员变量的所有引用作为前缀.

我是否坚持使用self为所有成员变量添加前缀,或者有没有办法声明它们可以让我避免这样做?

即使我建议的不是pythonic,我仍然想知道它是否可能.

我已经看过这些相关的SO问题,但他们并没有完全回答我的想法:

python self

112
推荐指数
7
解决办法
4万
查看次数

可选择用于学习数据结构和算法的编程语言

哪种编程语言,你会推荐学习有关数据结构和算法吗?

考虑以下因素:

  • 个人经验
  • 语言功能(指针,面向对象等)
  • 适合学习DS&A概念

我问,因为有些书是编程语言无关的(从数学角度编写,并使用伪代码).如果我从其中一个中学习,我想选择一种编程语言来编写和运行算法.

然后,还有其他书籍介绍了DS&A概念和用特定编程语言编写的示例 - 我也想编写这些算法 - 因此,在某种程度上,语言也会选择这本书.

无论哪种方式,我必须选择一种语言,我宁愿坚持一个.撇开个人语言偏好,哪一个最适合此目的?

language-agnostic algorithm data-structures

72
推荐指数
11
解决办法
5万
查看次数

Swing:获取JFrame的图像

我如何获得java.awt.ImageJFrame?

我想获得一个屏幕截图JFrame(以后在我的应用程序中使用).目前,这是通过使用机器人拍摄指定所JFrame涉及的坐标和尺寸的屏幕截图来完成的.

但是,我相信有一种更好的方法:默认情况下,Swing组件在将自己绘制到屏幕上之前将它们自身渲染为双缓冲区.

有没有办法从组件中获取这些图像?

java swing screenshot image jframe

62
推荐指数
1
解决办法
4万
查看次数

Java:通过HashMap迭代,哪个更有效?

给定以下代码,使用两种替代方法来迭代它,
这两种方法之间是否有任何性能差异?

        Map<String, Integer> map = new HashMap<String, Integer>();
        //populate map

        //alt. #1
        for (String key : map.keySet())
        {
            Integer value = map.get(key);
            //use key and value
        }

        //alt. #2
        for (Map.Entry<String, Integer> entry : map.entrySet())
        {
            String key = entry.getKey();
            Integer value = entry.getValue();
            //use key and value
        }
Run Code Online (Sandbox Code Playgroud)

我倾向于认为这alt. #2是迭代整个过程的更有效方法map(但我可能是错的)

java iteration performance hashmap map

56
推荐指数
5
解决办法
7万
查看次数

如何设置HTTP GET请求的标头,并触发文件下载?

更新 20140702:

(但我将其他一个答案标记为接受而不是我自己的答案,因为它让我在那里一半,并奖励努力)


似乎无法通过链接设置HTTP请求标头<a href="...">,并且只能使用XMLHttpRequest.

但是,链接到的URL是应该下载的文件(浏览器不应该导航到它的URL),我不确定这是否可以使用AJAX完成.

此外,返回的文件是二进制文件,而AJAX不适用于此.

如何使用添加了自定义标头的HTTP请求触发文件下载?

编辑:修复损坏的链接

javascript ajax download http-headers

53
推荐指数
5
解决办法
9万
查看次数

向上/向下舍入到最近的分钟

你如何四舍五入/圆下来momentjs时刻最接近的分钟数?

我检查了文档,但似乎没有这方法.

请注意,我不希望将字符串四舍五入到最接近的分钟,我想要moment返回(或修改到位,也可以).我不想转换为字符串,转换回来也是如此.

谢谢.


根据要求,这里有一些代码:

var now = new moment(new Date());

if (now.seconds() > 0) {
    now.add('minutes', -1);
}

now.seconds(0);
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我已经设法在这里手动完成了这一刻,但它似乎相当hacky.只是在一种更优雅的方式实现这一目标.

javascript time momentjs

51
推荐指数
6
解决办法
5万
查看次数

Java swing:多行标签?

可能重复:
JLabel中的多行文本

我想做这个:

JLabel myLabel = new JLabel();
myLabel.setText("This is\na multi-line string");
Run Code Online (Sandbox Code Playgroud)

目前,这会生成一个显示的标签

This isa multi-line string
Run Code Online (Sandbox Code Playgroud)

我希望它能做到这一点:

This is
a multi-line string
Run Code Online (Sandbox Code Playgroud)

有什么建议?

谢谢


编辑:实施解决方案

在方法体中:

myLabel.setText(convertToMultiline("This is\na multi-line string"));
Run Code Online (Sandbox Code Playgroud)

辅助方法:

public static String convertToMultiline(String orig)
{
    return "<html>" + orig.replaceAll("\n", "<br>");
}
Run Code Online (Sandbox Code Playgroud)

java string swing jlabel multiline

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

EmberJS动作 - 当包含在`actions`中时,从另一个动作调用一个动作

actions在EmberJS控制器中包含时,如何从另一个动作调用一个动作?

使用现已弃用的方法定义操作的原始代码:

//app.js
App.IndexController = Ember.ArrayController.extend({
    // properties
    /* ... */

    // actions
    actionFoo: function() {
        /* ... */
        this.actionBar();
    },
    actionBar: function() {
        /* ... */
    }
});

//app.html
<div class="foo" {{action actionFoo this}}>
<div class="bar" {{action actionBar this}}>
Run Code Online (Sandbox Code Playgroud)

但是,使用EmberJS 1.0.0,我们会收到弃用警告,说必须将操作放在控制器内的操作对象中,而不是直接放在控制器中,如上所述.

根据建议更新代码:

//app.js
App.IndexController = Ember.ArrayController.extend({
    // properties
    /* ... */

    // actions
    actions: {
        actionFoo: function() {
            /* ... */
            this.actionBar(); //this.actionBar is undefined
            // this.actions.actionBar(); //this.actions is undefined
        },
        actionBar: function() {
            /* ... */ …
Run Code Online (Sandbox Code Playgroud)

javascript publish-subscribe ember.js ember-controllers

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

在ArrayList上操作时,AbstractList.remove()中的UnsupportedOperationException

ArrayList的列表迭代器确实实现了remove方法,但是,我得到以下抛出的异常:

UnsupportedOperationException at java.util.AbstractList.remove(AbstractList.java:144)
Run Code Online (Sandbox Code Playgroud)

通过此代码:

protected void removeZeroLengthStringsFrom(List<String> stringList)
{
    ListIterator<String> iter = stringList.listIterator();
    String s;
    while (iter.hasNext())
    {
        s = iter.next();
        if (s.length() == 0)
        {
            iter.remove();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?我已经证实List<String>我传入的确是ArrayList<String>.

谢谢!

java iterator list arraylist

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