我有一个重复输入值的流输入.我可以使用任何数据结构,但我必须计算每个元素的出现次数.假设我有以下手机供应商列表:
Apple Nokia Samsung Apple LG Nokia HTC Android Apple Nokia Nokia Apple Samsung
我必须构建任何数据结构,最好是带有详细信息的地图
Apple,4 Nokia,4 Samsung,2 LG,1 Android,1
我不确定这是否是最佳的.有没有比这更好的解决方案?
实际上我还没有把上面的内容写成代码.所以更好的代码也会有所帮助.
它有一个特殊的名称,但我不记得它是什么.有两个不同的术语,一个用于将子类的数组转换为其超类的数组,另一种方式.
一种理论问题.很长一段时间,如果你没有理论的心情,请随意跳过.
想象一下,你有两个类,一个继承自另一个.基类是通用的,并且有一个方法,在闭合类型中必须返回此闭合类型的某个实例.
像这样(注意文字中的???):
public class Adapter<T>
{
public virtual ??? DoSomething()
{
...
}
}
public class AdaptedString : Adapter<String>
{
public override AdaptedString DoSomething()
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
我不能这样做,因为没有办法引用将从泛型类型派生的闭合类型.(对不起破解语言,只是不知道如何表达它.)没有设置关键字???来指定此方法将返回将从此泛型类型派生的类型实例.
相反,我可以使用显式将类型名称传递给通用基础的变通方法.但它看起来多余.
public class Adapter<TThis,T>
{
public virtual TThis DoSomething()
{
...
}
}
public class AdaptedString : Adapter<AdaptedString,String>
{
public override AdaptedString DoSomething()
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
如果在基类中我需要访问TThis实例的成员,我必须添加一个约束.这一次看起来很难看 - 请注意约束:
public class Adapter<TThis,T>
where TThis : Adapter<TThis, T>
{
protected int _field;
...
public …Run Code Online (Sandbox Code Playgroud) 有没有办法更改我的SQL Server Management Studio的窗口标题,以显示我连接到的当前服务器?
要知道我连接到哪个DB,我必须一直向上滚动以查看服务器的名称,这很痛苦.
也许有一个可用的插件或东西.
Visual Studio 2010转移到使用WPF渲染编辑器.当我编辑代码时,这会导致速度减慢,特别是如果我正在运行其他使用其他视频功能的东西.
我怎样才能加快速度呢?一个新的视频卡?新司机?设置?
WPF使用什么技术来渲染以及哪些视频卡可以补充它?
我有一个用C#编写的COM可见对象,它接受一个字符串数组列表.我可以将Access 2000中的字符串数组集合发送到此对象吗?如果没有,那么从Access 2000向C#对象发送多个字符串数组的最佳方法是什么?
您好,
我有一个绑定到 XML 源的 DataGridView。
我怎样才能实现这个目标?
是否可以将XPI绑定格式的firefox插件解码为本地语言XUL?
我只是想学习如何制作插件.所以,我想如果我可以解码一个Firefox插件,那么我可以学习插件架构!
我正在使用jQuery开发一个虚拟键盘,我的问题是:
当我单击键盘上的键时,输入在单击期间失去焦点,如果输入中的字母数大于输入大小,则输入显示字符串的开头.然后当释放点击时,输入返回焦点,插入符号到达字符串的末尾.所以它很难看,因为我们的印象是输入内容闪烁.
theButtonDiv.click(function() {
attachedInput.value = idOfAttachedInput.value + theActualKey;
attachedInput.focus();
});
Run Code Online (Sandbox Code Playgroud)
因此,当我们点击键盘按钮时,我想防止输入失去焦点.
我怎样才能做到这一点?
谢谢.
我想用相同的可观察对象(相同的动作)绑定多个文本输入
<input id="test1" name="test1" type="text" data-bind="value: searchQuantity"/>
<input id="test2" name="test2" type="text" data-bind="value: searchQuantity"/>
var viewModel = {
searchQuantity: ko.observable(),
};
<p>You have typed: <span id="spantest1" data-bind="text: searchQuantity"></span></p>
<p>You have typed: <span id="spantest2" data-bind="text: searchQuantity"></span></p>
Run Code Online (Sandbox Code Playgroud)
但是当我更改输入 test1 的值时,它会更改 test2 的值。
我想对两个输入执行相同的操作,但我想更改对应跨度的值。(这只是一个示例,因此我可以在带有文本框的网格上执行相同操作;我想在更改文本框时重新计算同一列中包含更改后的文本框的所有文本框的总和。)
我想我没有很好地解释我的问题。
请看截图

我真正想要的是在更改红色文本框中的值时,绿色单元格将使用列的总和进行更新(总和将按年份计算)。
谢谢。
c# ×4
.net ×2
access-vba ×1
arrays ×1
caret ×1
casting ×1
collections ×1
datagridview ×1
decompiling ×1
firefox ×1
focus ×1
generics ×1
interop ×1
java ×1
javascript ×1
jquery ×1
knockout.js ×1
sql-server ×1
ssms ×1
terminology ×1
vba ×1
winforms ×1
wpf ×1
xpi ×1
xul ×1