问题列表 - 第3736页

合并vs空字符串连接

我的同事是C#的新手,并不知道合并操作员.所以,我看到他写了一行代码:

string foo = "" + str;
Run Code Online (Sandbox Code Playgroud)

想法是,如果str为null,则此表达式将返回空字符串.当然,这可以改写为:

string foo = str ?? "";
Run Code Online (Sandbox Code Playgroud)

我觉得这会更具可读性.但这真的很重要吗?可读性的好处是否足以建议返回并使这些线看起来像第二个?或者这是我应该学会放手的事情之一(假设我的同事接受了未来最佳方式的教育)?

编辑:只是一个注释,我很欣赏效率评论,但这并没有真正用于任何性能至关重要的情况.因此,虽然这些信息很有趣,但并不一定是我认为重要的信息.

c# string concatenation coalesce

8
推荐指数
1
解决办法
3813
查看次数

字符串比较:单独比较Vs附加字符串比较

我有六个字符串变量,如str11,str12,str13,str21,str21和str23.

我需要比较这些变量的组合.

我必须检查的组合是str11 - str12 - str13作为一组,str21 - str22 - str23作为其他组.我必须比较这两组.

现在我很困惑我应该用哪种方法进行比较?

我可以追加相同组的字符串并进行比较,这只是一个比较说 ( str11 append str12 append str13 ) eqauls ( str21 append str22 append str23 )

要么

我应该进行个人3次比较吗?

if( str11 equals str21 ) {

    if( str12 equals str22 ) {

        if( str13 equals str23 ) {

        }

    }

}
Run Code Online (Sandbox Code Playgroud)

当我进行字符串比较时,由于字符串长度而导致我的性能因素是什么?让我们假设所有字符串都是相同的(大约)长度.

java string comparison

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

C#为什么定时器频率极度偏离?

这两个System.Timers.TimerSystem.Threading.Timer火在离请求的那些相当不同的时间间隔.例如:

new System.Timers.Timer(1000d / 20);
Run Code Online (Sandbox Code Playgroud)

产生一个每秒发射16次而不是20次的计时器.

为了确保太长的事件处理程序没有副作用,我写了这个小测试程序:

int[] frequencies = { 5, 10, 15, 20, 30, 50, 75, 100, 200, 500 };

// Test System.Timers.Timer
foreach (int frequency in frequencies)
{
    int count = 0;

    // Initialize timer
    System.Timers.Timer timer = new System.Timers.Timer(1000d / frequency);
    timer.Elapsed += delegate { Interlocked.Increment(ref count); };

    // Count for 10 seconds
    DateTime start = DateTime.Now;
    timer.Enabled = true;
    while (DateTime.Now < start + TimeSpan.FromSeconds(10))
        Thread.Sleep(10);
    timer.Enabled = false;

    // Calculate …
Run Code Online (Sandbox Code Playgroud)

c# timer frequency deviation

14
推荐指数
3
解决办法
8269
查看次数

如何在.NET C#中以编程方式确定IP是否来自同一LAN

我知道如果IP超出子网掩码+本地IP规则,它只能通过网关访问.问题是我不知道如何使用.NET以编程方式获取本地IP地址,也不知道本地子网掩码.你们中的任何人可以帮助我吗?

我将使用此信息从我的批处理SQL插入队列中挤出最大性能.如果SQL服务器属于同一子网,那么它将使用针对最小延迟优化的算法,否则我将使用针对高延迟优化的算法.

.net c# ip

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

Ajax和ASP.NET MasterPages混合在一起吗?

有没有人有使用这两种技术的经验?让两者合作的主要困难是什么(如果有的话)?使用这些技术的网站与使用Ajax的普通ASP.NET Web应用程序有何不同?

谢谢!

asp.net ajax master-pages

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

Java映射的值受键的类型参数限制

在Java中是否有一种方法可以使用映射,其中值的类型参数与键的类型参数相关联?我想写的内容如下:

public class Foo {
    // This declaration won't compile - what should it be?
    private static Map<Class<T>, T> defaultValues;

    // These two methods are just fine
    public static <T> void setDefaultValue(Class<T> clazz, T value) {
        defaultValues.put(clazz, value);
    }

    public static <T> T getDefaultValue(Class<T> clazz) {
        return defaultValues.get(clazz);
    }
}
Run Code Online (Sandbox Code Playgroud)

也就是说,只要值的类型与Class对象的类型匹配,我就可以对Class对象存储任何默认值.我不明白为什么不允许这样做,因为我可以确保在设置/获取类型正确的值时.

编辑:感谢cletus的回答.我实际上并不需要地图本身的类型参数,因为我可以确保获取/设置值的方法的一致性,即使它意味着使用一些稍微丑陋的演员表.

java generics

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

什么是WPF的最佳UI组件集?

寻找通用的WPF工具集.目前正在关注Telerik和Infragistics.那里有更好的选择吗?那两个,哪个更好?

windows silverlight wpf user-interface uicomponents

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

无论上下文如何,都将SimpleXML对象强制为字符串

假设我有一些像这样的XML

<channel>
  <item>
    <title>This is title 1</title>
  </item>
</channel>
Run Code Online (Sandbox Code Playgroud)

下面的代码执行我想要的,它将标题输出为字符串

$xml = simplexml_load_string($xmlstring);
echo $xml->channel->item->title;
Run Code Online (Sandbox Code Playgroud)

这是我的问题.下面的代码不会将标题视为该上下文中的字符串,因此我最终得到的是数组中的SimpleXML对象而不是字符串.

$foo = array( $xml->channel->item->title );
Run Code Online (Sandbox Code Playgroud)

我一直在这样做

$foo = array( sprintf("%s",$xml->channel->item->title) );
Run Code Online (Sandbox Code Playgroud)

但这看起来很难看.

无论上下文如何,将SimpleXML对象强制转换为字符串的最佳方法是什么?

php xml simplexml

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

为什么一旦语义不可行?

在RPC语义中,Erlang有最好的希望,SUN RPC至少有一次,Java RMI最多只有一次,但没有人只有一次语义.

为什么只有一次语义似乎不可行?

例如,如果客户端继续重新发送唯一标记的请求,直到收到回复并且服务器跟踪所有处理的请求以便不复制请求.这不是一次吗?

networking rpc semantics

10
推荐指数
1
解决办法
9179
查看次数

Magento的当前用户?

我正在自定义产品视图页面,我需要显示用户的名字.如何访问当前用户的帐户信息(如果他已登录)以获取姓名等?

php magento

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