小编Svi*_*ish的帖子

双向字典?

我有两组对象,在某些情况下,第一组将用作另一组的键,而在其他情况下,第二组将用作第一组的键.此外,两个列表中都不得有重复项.

什么是一个好的数据结构用于此?我应该使用两个字典还是有更聪明的方法?

c# data-structures

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

C#:什么是虚拟事件以及它们如何使用?

虚拟活动如何运作?你会怎么覆盖它?那会怎么样?在什么情况下你会这样做?

例如,它是否可以替代受保护的OnEvent方法?那么继承类可以覆盖事件并直接引发它吗?或者那是错的还是不行?

MSDN对此说了这样的话:

可以使用virtual关键字将事件标记为虚拟事件.这使派生类可以使用override关键字覆盖事件行为.还可以密封覆盖虚拟事件的事件,该事件指定对于派生类,它不再是虚拟的.

但这并没有让我更加明智.密封的东西是显而易见的.

注意:我已经看到了C#中的虚拟事件如何工作?问题,但它并不是真正的虚拟事件如何运作.相反,这个人是如何得到他们使用它们得到的结果.试图弄清楚他的例子和答案中的虚拟事件是什么,但实际上并没有真正理解它.

c# events virtual inheritance

21
推荐指数
1
解决办法
9132
查看次数

C#:静态object.Equals如何检查是否相等?

假设你有两个不同的类,每个类都有自己的Equals实现; 使用哪一个?如果只有一个人有一个怎么办?或者他们都没有?以下任何一行是否相同?

object .Equals( first, second )
first .Equals( second )
second .Equals( first )
Run Code Online (Sandbox Code Playgroud)

我猜测前两个可能是等价的,但我真的不知道.

它到底是做什么的?

c# static equals object

21
推荐指数
1
解决办法
8624
查看次数

Oracle:如何计算null和非null行

我有一个表可能有两列null(以及其他一些列).我想计算有多少行,其中列a,b,两列都没有设置为null.

在一个查询中,Oracle可以实现这一点吗?或者我是否必须为每个创建一个查询?例如,不能使用group by或其他一些我可能不知道的东西?

oracle null select grouping

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

C#:如何从某种文化中获取资源字符串

我有一个资源程序集,其中包含各种语言的翻译文本.项目类似于:

  • FooBar.resx
  • FooBar.nb-NO.resx
  • FooBar.sv-SE.resx
  • ...

我可以使用这样的静态属性来获取文本:

var value = FooBar.Hello;
Run Code Online (Sandbox Code Playgroud)

或者使用这样的反射:

var value = resourceAssembly
      .GetType("Namespace.FooBar")
      .GetProperty("Hello")
      .GetValue(null, null) as string;
Run Code Online (Sandbox Code Playgroud)

两种方式都将获得属于当前线程的当前UI文化的值.这很好,完全是我通常喜欢的.

但是,如果我明确地想要瑞典的价值,而不必改变UI文化,我能做些什么吗?

.net c# resources localization

20
推荐指数
2
解决办法
3万
查看次数

Java:在equals检查中避免NullPointerException的干净方法

我有一个地址对象,我想为其创建一个equals方法.我可以通过做类似下面的事情(缩短一点)使这变得非常简单:

public boolean equals(Object obj) 
{
    if (this == obj)
        return true;

    if (obj == null)
        return false;

    if (getClass() != obj.getClass())
        return false;

    Address other = (Address) obj;

    return this.getStreet().equals(other.getStreet())
        && this.getStreetNumber().equals(other.getStreetNumber())
        && this.getStreetLetter().equals(other.getStreetLetter())
        && this.getTown().equals(other.getTown());
}
Run Code Online (Sandbox Code Playgroud)

问题是,其中一些可能是空的.换句话说,NullPointerException如果此地址中没有街道信件,我会得到一个.

如何在考虑空值的情况下以干净的方式编写此文件?

java coding-style equals nullpointerexception

20
推荐指数
3
解决办法
2万
查看次数

MySQL:总计GROUP BY WITH ROLLUP好奇心

我有两个问题.其中一个对我有意义,另一个则没有.第一:

SELECT gender AS 'Gender', count(*) AS '#'
    FROM registrations 
    GROUP BY gender WITH ROLLUP
Run Code Online (Sandbox Code Playgroud)

这给了我这个:

Gender       #
Female      20
Male        19
NULL        39
Run Code Online (Sandbox Code Playgroud)

所以,我得到了计数和总数.我的期望.下一个:

SELECT c.printable_name AS 'Country', count(*) AS '#' 
    FROM registrations r 
    INNER JOIN country c ON r.country = c.country_id 
    GROUP BY country WITH ROLLUP

Country         #
Denmark         9
Norway         10
Sweden         18
United States   1
Uzbekistan      1
Uzbekistan     39
Run Code Online (Sandbox Code Playgroud)

结果相同.但为什么我要总共得到乌兹别克斯坦?

mysql

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

MySQL:如何检查字符串是否为有效的DATE,TIME或DATETIME

当我尝试将值放入无效的DATE字段时,MySQL似乎使用了0000-00-00.有没有办法在没有更新DATE字段的情况下"检查"?并从例如PHP做到这一点?

比如,有没有办法可以查询MySQL服务器并询问"嘿,这个DATE,TIME或DATETIME对你有效吗?"

或者是否有更好的方法呢?

php mysql validation datetime

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

MySQL:如果不存在则添加约束

在我的数据库创建脚本中创建脚本,如下所示:

CREATE TABLE IF NOT EXISTS `rabbits`
(
    `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
    `name` VARCHAR(255) NOT NULL,
    `main_page_id` INT UNSIGNED COMMENT 'What page is the main one',
    PRIMARY KEY (`id`),
    KEY `main_page_id` (`main_page_id`)
)
ENGINE=InnoDB;

CREATE TABLE IF NOT EXISTS `rabbit_pages`
(
    `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
    `rabbit_id` INT UNSIGNED NOT NULL,
    `title` VARCHAR(255) NOT NULL,
    `content` TEXT NOT NULL,
    PRIMARY KEY (`id`),
    KEY `rabbit_id` (`rabbit_id`),
    CONSTRAINT `fk_rabbits_pages` FOREIGN KEY (`rabbit_id`) REFERENCES `rabbits` (`id`)
)
ENGINE=InnoDB;

ALTER TABLE …
Run Code Online (Sandbox Code Playgroud)

mysql constraints

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

用于安装多个第三方商业库的Maven POM文件

我有一堆项目依赖于一组商业第三方库.我们目前没有公司存储库,因此我必须在我自己的本地存储库中安装库.

mvn install:installFile -Dpackaging=jar -Dfile=<file> -DgroupId=<groupId> -DartifactId=<artifactId> -Dversion=<version>为每个文件运行相当繁琐.可以创建一个bat文件,但有没有办法使用maven这样做?

我正在考虑一个包含所有jar和单个pom文件的项目,其中包含所有组ID,工件ID,版本和文件名,然后是mvn install在该项目中运行的可能性,或者沿着这些行的东西.

有可能这样吗?


注意:我使用的是Maven 3,但Maven 2兼容的解决方案也不错.

maven-2 maven-3 maven

19
推荐指数
2
解决办法
3万
查看次数