小编idl*_*age的帖子

当.equals()工作时,List.contains()失败

我有一个ArrayListTest对象,使用字符串作为等价检查.我希望能够用来List.contains()检查列表是否包含使用某个字符串的对象.

只是:

Test a = new Test("a");
a.equals("a"); // True

List<Test> test = new ArrayList<Test>();
test.add(a);
test.contains("a"); // False!
Run Code Online (Sandbox Code Playgroud)

等于和散列函数:

@Override
public boolean equals(Object o) {
    if (o == null) return false;
    if (o == this) return true;
    if (!(o instanceof Test)) {
        return (o instanceof String) && (name.equals(o));
    }
    Test t = (Test)o;
    return name.equals(t.GetName());
}

@Override
public int hashCode() {
    return name.hashCode();
}
Run Code Online (Sandbox Code Playgroud)

我读到这是为了确保contains自定义类的工作,它需要覆盖equals.因此,当我equals返回true时contains返回false …

java contains list equals

33
推荐指数
4
解决办法
8831
查看次数

如何允许文本溢出div

举一个简单的例子,这个:文本应该在一行中,但由于div的大小,它被分解为三行.如何在没有包装的情况下文本溢出div?

HTML:

<div style="width: 20px;">Some text here</div>
Run Code Online (Sandbox Code Playgroud)

结果:

Some
text
here
Run Code Online (Sandbox Code Playgroud)

我要这个:

Some text here
Run Code Online (Sandbox Code Playgroud)

html css

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

“ReactComponent”未从 svg 导出

我使用 CRA 创建了一个打字稿应用程序,代码如下:

import { ReactComponent as Search } from './search.svg'
Run Code Online (Sandbox Code Playgroud)

它运行良好,现在我想将此代码剥离到 npm 包(库)中。我通过首先再次运行 CRA,然后删除所有看起来不相关的内容(例如公共文件夹)来创建此包。一个简化版本/dist如下所示:

esm/
   icon/
      index.d.ts
      index.js
   index.d.ts
   index.js
Run Code Online (Sandbox Code Playgroud)

这是原文icon/index.ts

/// <reference types="react-scripts" />
import { ReactComponent as Search } from './search.svg'
export const Icons = {
  Search,
}
Run Code Online (Sandbox Code Playgroud)

这是编译后的icon/index.d.ts

/// <reference types="react" /> <-- Changed for some reason??
export declare const Icons: {
    Search: import("react").FunctionComponent<import("react").SVGProps<SVGSVGElement> & {
        title?: string | undefined;
    }>;
};
Run Code Online (Sandbox Code Playgroud)

当我尝试运行使用该库的应用程序时,出现以下错误:

../dist/esm/common/icon/index.js Attempted import error:
'ReactComponent' is not …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs create-react-app

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

检查列表是否仅包含项目x

假设所有w,x,y和z都可以在列表A中.是否有快捷方式来检查它是否包含x - 例如.没有否定其他变量?

w,x,y和z都是单个值(不是列表,元组等).

python list

12
推荐指数
4
解决办法
2万
查看次数

使用DropDownListFor添加'required'属性

我有这个:

@Html.DropDownListFor(x => x.SelectedValue, new SelectList(Model.SomeList, "Value", "Text"))
Run Code Online (Sandbox Code Playgroud)

并希望它呈现为:

<select required>
    <option>...</option>
    ...
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

c# razor

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

具有相同名称的超类变量的子类变量

有可能没有覆盖发生吗?例如:

class A:
    def __init__(self, name):
        self.name = name

class B(A):
    def __init__(self, name):
        A.__init__(self, name)
        self.name = name + "yes"
Run Code Online (Sandbox Code Playgroud)

self.nameB类是否有任何方法可以独立于A类,或者是否必须使用不同的名称?

python subclass

6
推荐指数
1
解决办法
3503
查看次数

如何使用SqlBuilder

这个SqlBuilder:

var builder = new SqlBuilder(); 
var sql = builder.AddTemplate( /*...
Run Code Online (Sandbox Code Playgroud)

强烈的愚蠢的问题,但是,我该如何使用呢?我知道它在中Dapper.Contrib,但是那using句话还不够。using我需要添加哪些参考或其他陈述?

c# sqlbuilder dapper

6
推荐指数
2
解决办法
6787
查看次数

用另一个类来否定一个类的css属性

我有这个:

<div class="style1 neg">
    <input type="submit" value="blah" />
</div>
Run Code Online (Sandbox Code Playgroud)

和css:

.style1 {
    float: left;
    margin-top: 25px;
}
.style1 .neg {
    margin-top: 0;
}
Run Code Online (Sandbox Code Playgroud)

我试图否定margin-top,但是当我在浏览器中检查元素时,'neg'样式似乎完全被忽略了.我该怎么做呢?

html css

5
推荐指数
1
解决办法
1346
查看次数

使用ExpandoObject传递动态参数

我有一些函数,其原型看起来像这样: public void doThings(string sql, dynamic dParams);

它使用这些参数进行某种SQL查询.我没有写它,但我必须使用它.当我做这样的事情时它工作正常:

doThings("select * from SomeTable where myval1=@v1 and myval2=@v2",
        new
        {
            v1 = new Dapper.DbString()
            {
                Value = "yay",
                IsAnsi = true,
                Length = 50
            },
            v2 = new Dapper.DbString()
            {
                Value = "really",
                IsAnsi = true,
                Length = 32
            }
        });
Run Code Online (Sandbox Code Playgroud)

但是当我第一次将动态参数放入ExpandoObject时:

dynamic dynParams = new ExpandoObject();
dynParams.v1 = new Dapper.DbString()
    {
        Value = "yay",
        IsAnsi = true,
        Length = 50
    }
doThings("query here", dynParams);  
Run Code Online (Sandbox Code Playgroud)

然后查询不返回任何结果.我不想打电话doThings()和写new块十倍十个不同的场景,我可能要查询myval2或 …

c# sql dynamic parameter-passing expandoobject

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

模型绑定到Lists会抛出"Collection is read-only"异常

我有一个这样的课:

public class SomeModel
{
    public List<Item> Items { get; set; }

    public SomeModel()
    {
        this.Items = new List<Item>();
    }

}
Run Code Online (Sandbox Code Playgroud)

Item形式上可以有可变数量的s,零到多.我正在使用javascript在提交时动态追加隐藏的输入字段:

$("#container").children(".item").each(function (i) {
    form.append('<input type="hidden" name="Items[' + i + '].Id" value="' + $(this).val() + '" />');
});
Run Code Online (Sandbox Code Playgroud)

但是,提交后,我收到此错误:

System.NotSupportedException: Collection is read-only.
Run Code Online (Sandbox Code Playgroud)

渲染的语法基本相同,一个我就会使用@Html.HiddenFor(model => model.Items[i].Id)model.Items作为一个数组,而不是一个列表,并且工作正常.这里出了什么问题?

行动方法签名:

public ActionResult Post(SomeModel m)
{
Run Code Online (Sandbox Code Playgroud)

c# razor asp.net-mvc-4

4
推荐指数
2
解决办法
8786
查看次数