我想要做的就是获得在为事件输入密钥时按下的实际字符.
我所看到的唯一选择是e.KeyChar哪个会给我位置而不是角色本身.
我想要做的是将按键的值限制在0-9之间的数字.我现在这样做的方式就是if((e.KeyChar < 48 || (e.KeyChar > 57)))
仅仅输入0和9的值似乎有点便宜,我很想知道如何获得字符值本身而不是键.
编辑:感谢您的投入; 所以一般来说,没有办法从e.KeyChar值到输入本身的值.
我真的想接受我的事件,e,并且直接访问该字符,而不是使用e.KeyChar来获取该值的数字表示.
使用该.ToArray()函数时,是否需要隐式定义数组的大小,以便保存您要转换的列表中的字符?
String [] array = List.ToArray();
Run Code Online (Sandbox Code Playgroud)
我尝试这样做是因为我需要使用.GetValue()数组的能力,但是,数组保持大小为1而不保留列表中的材料.我试图使用.ToArray()不正确吗?
colAndDelimiter = new List<string>();
colAndDelimiter.Add(text);
String [] cd = colAndDelimiter.ToArray();
Run Code Online (Sandbox Code Playgroud)
这是我对阵列产生影响的所有代码.当我Console.WriteLine()在列表中它给了我整个文本.我可能会对列表如何工作感到困惑.它是否将所有内容存储为单个项目,这就是为什么数组只显示一个位置?
public static bool CheckExpired()
{
DateTime expiryDate, currentDate = DateTime.Today;
DateTime.TryParse(date, out expiryDate);
if (expiryDate > currentDate)
{
return true;
}
else { return false; }
}
Run Code Online (Sandbox Code Playgroud)
这就是我现在拥有的.但是,如果日期格式不正确,我希望有第三个选项.就像现在一样,它直接跳转到else并返回false.
问题是我想要三个可能的结果:
true - >尚未过期
false - >已过期
第三 - >输入无效日期
我只是坚持我如何到达那里.我知道我可以很容易地使用String返回类型,但有什么方法吗?
public class PriorityQueue<T> : IPriorityQueue<T>
where T : IComparable
Run Code Online (Sandbox Code Playgroud)
所以,我已经使用上面的Header创建了一个优先级队列类,我试图将它与另一个类一起使用.
private static PriorityQueue<Order> PQ;
Run Code Online (Sandbox Code Playgroud)
看起来这应该完全正常,但我收到了这个错误.
我
namespace.Order不能T在泛型方法中用作类型参数namespace.PriorityQueue<T>.有没有隐式转换从namespace.Order到System.IComparable
我无法辨别出这是告诉我要做什么的.这是否意味着我的IComparable实现不足以达到此目的,还是我正在使用某种错误的语法?