通常,问号的主要用途是有条件的,x ? "yes" : "no"
.
但是我已经看到了它的另一个用途,但是找不到?
例如运算符的这种用法的解释.
public int? myProperty
{
get;
set;
}
Run Code Online (Sandbox Code Playgroud) 以下是面试问题.我想出了一个解决方案,但我不确定它为什么会起作用.
题:
在不修改Sparta
类的情况下,编写一些MakeItReturnFalse
返回的代码false
.
public class Sparta : Place
{
public bool MakeItReturnFalse()
{
return this is Sparta;
}
}
Run Code Online (Sandbox Code Playgroud)
我的解决方案:(SPOILER)
public class Place
{
public interface Sparta { }
}
但为什么Sparta
在MakeItReturnFalse()
提到{namespace}.Place.Sparta
而不是{namespace}.Sparta
?
有没有办法String.Split
在.Net中做相反的事情?也就是说,将数组的所有元素与给定的分隔符组合在一起.
采取["a", "b", "c"]
和给予"a b c"
(与分隔符" "
).
更新:我自己找到了答案.这是String.Join
方法.
给出以下代码:
string someString = null;
switch (someString)
{
case string s:
Console.WriteLine("string s");
break;
case var o:
Console.WriteLine("var o");
break;
default:
Console.WriteLine("default");
break;
}
Run Code Online (Sandbox Code Playgroud)
为什么switch语句匹配case var o
?
因为(有效地)评估为false case string s
,s == null
所以我的理解不匹配(null as string) != null
.VS Code上的IntelliSense告诉我这o
也是一个string
.有什么想法吗?
类似于:C#7切换案例,带有空检查
HttpWebRequest request = WebRequest.Create("http://google.com") as HttpWebRequest;
request.Accept = "application/xrds+xml";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
WebHeaderCollection header = response.Headers;
Run Code Online (Sandbox Code Playgroud)
谷歌在这里返回文字.怎么看?
我有一个看起来像这样的对象:
public class Student
{
public string Name { get; set; }
public int Grade { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我想创建以下查询:按学生姓名分组成绩,按成绩对每个学生组进行排序,并按每组中的最高成绩对订单组进行排序.
所以它看起来像这样:
A 100
A 80
B 80
B 50
B 40
C 70
C 30
Run Code Online (Sandbox Code Playgroud)
我创建了以下查询:
StudentsGrades.GroupBy(student => student.Name)
.OrderBy(studentGradesGroup => studentGradesGroup.Max(student => student.Grade));
Run Code Online (Sandbox Code Playgroud)
但是返回IEnumerable
IGrouping
,我无法对列表进行排序,除非我在另一个foreach
查询中执行此操作并使用将结果添加到其他列表AddRange
.
有更漂亮的方法吗?
我正在尝试创建一个响应的正方形网格.应调整方块大小以适合视口的宽度.更改视口的高度时,方块不应调整大小.
我得到了如何调整每个方块的宽度,但我不知道如何使元素方形以及如何在视口宽度变化时缩放它们的高度.
在下方小提琴的示例中,七个方格应始终水平放置,并且它们应按比例缩放.我不在乎可见的行数.
在这里小提琴http://jsfiddle.net/gonyhvz8/11/
<body>
<div class="flex-container">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
<div class="flex-item">4</div>
<div class="flex-item">5</div>
<div class="flex-item">6</div>
<div class="flex-item">7</div>
</div>
<div class="flex-container">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
<div class="flex-item">4</div>
<div class="flex-item">5</div>
<div class="flex-item">6</div>
<div class="flex-item">7</div>
</div>
<div class="flex-container">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
<div class="flex-item">4</div>
<div class="flex-item">5</div>
<div class="flex-item">6</div>
<div class="flex-item">7</div>
</div>
<div class="flex-container">
<div class="flex-item">1</div>
<div class="flex-item">2</div>
<div class="flex-item">3</div>
<div class="flex-item">4</div>
<div class="flex-item">5</div>
<div class="flex-item">6</div>
<div class="flex-item">7</div>
</div>
<div class="flex-container">
<div class="flex-item">1</div>
<div class="flex-item">2</div> …
Run Code Online (Sandbox Code Playgroud) 我正在使用Facebook API获取给定URL的类似/共享计数.奇怪的是,返回结果似乎很不一致.例如,此页面返回结果:
https://api.facebook.com/method/fql.query?query=select%20total_count,like_count,comment_count,share_count,click_count%20from%20link_stat%20where%20url='http://www.groupon.com/deals/seattlehelitourscom-by-classic-helicopter-corp'&format=json
然而,这个不是:
https://api.facebook.com/method/fql.query?query=select%20total_count,like_count,comment_count,share_count,click_count%20from%20link_stat%20where%20url='http://www.livingsocial.com/deals/278194-sunset-kayaking-hot-chowder'&format=json
第二页显然有一个共享计数,当我检查页面的HTML时,用于共享的URL是我在上面的API请求中放置的URL.但是,API不响应任何数量的喜欢或分享的任何计数信息.
关于为什么API可能会响应某些URL而不是其他URL的任何线索?
如果在using语句中发生异常,该对象是否仍然处理?
我问的原因是因为我试图决定是否在整个代码块或内部使用语句中进行尝试.请记住,某些例外情况正在设计中被重新抛出.
using (SPSite spSite = new SPSite(url))
{
// Get the Web
using (SPWeb spWeb = spSite.OpenWeb())
{
// Exception occurs here
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的案例,其中selenium chrome驱动程序getText()
方法(java)为某些元素返回一个空字符串,即使它为其他元素返回一个非空字符串xpath
.这是一个页面.
<div __gwt_cell="cell-gwt-uid-223" style="outline-style:none;">
<div>Text_1</div>
<div>Text_2</div>
<div>Text_3</div>
<div>Text_4</div>
<div>Text_5</div>
<div>Text_6</div>
</div>
Run Code Online (Sandbox Code Playgroud)
每个内标签的,我可以得到有效的返回值getTagName()
,getLocation()
,isEnabled()
,和isDisplayed()
.但是,getText()为某些div返回一个空字符串.
此外,我注意到如果我使用mac chrome驱动程序,它始终是'Text_5',getText()
返回一个空字符串.如果我使用Windows Chrome驱动程序,它始终是'Text_2',getText()
返回一个空字符串.如果我使用firefox驱动程序,则getText()
返回所有div的预期文本.
有没有其他人有这个困难?
在我的代码中,我使用这样的东西......
ArrayList<WebElement> list = (ArrayList<WebElement>) driver.findElements(By.xpath(“my xPath here”));
for (WebElement e: list) System.out.println(e.getText());
Run Code Online (Sandbox Code Playgroud)
如下所示,这是xPath
我正在使用的实际情况.上面的页面代码段处理最后两个div.
//*[@class='gwt-DialogBox']//tr[contains(@class,'data-grid-table-row')]//td[contains(@class,'lms-assignment-selection-wizard-cell')]/div/div
Run Code Online (Sandbox Code Playgroud)