问题列表 - 第5222页

返回Stringbuilder内容

琐事,我知道,但只是感兴趣

我有一个stringbuilder变量,我想返回它的内容,但是如果它是空的我想返回"|",那么最好在compare语句中使用stringbuilder.tostring,例如

   If lReturnStringBuilder.ToString = String.Empty Then
                lReturnStringBuilder.Append("|")
            End If
return lreturnStringBuilder.tostring
Run Code Online (Sandbox Code Playgroud)

或者最好将其转换为字符串,并进行比较,即使这意味着加载一个新变量并为其分配字符串空间,例如

Dim lString as string = lReturnStringBuilder.ToString
if lString = string.empty then
      lstring = "|"
end if
return lString
Run Code Online (Sandbox Code Playgroud)

vb.net string stringbuilder

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

正则表达式电子邮件 - 忽略前导和尾随空格?

我们使用以下内容在ASP.NET中进行电子邮件验证:

\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
Run Code Online (Sandbox Code Playgroud)

如何修改它以忽略前导和尾随空格?

我们在回发代码中处理的实际修剪但是如果用户通常由于复制和粘贴而具有额外空间,则验证器将被触发为无效.

.net regex email

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

将二次曲线点转换为多项式表示?

我有X,Y的2 分和1个贝塞尔点,一个的二次贝塞尔曲线.

使用此数据,我如何导出曲线的多项式表示

替代文字
(来源:euclidraw.com)

language-agnostic bezier curve quadratic polynomial-math

3
推荐指数
1
解决办法
1251
查看次数

symfony 1.1中的自定义500错误页面

如果发生致命PHP错误,symfony会重定向到自定义错误页面吗?

php symfony1

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

LINQ到对象的何时何地使用?

在哪些情况下我应该使用LINQ to Objects?

显然我可以在没有LINQ的情况下做任何事情.那么在哪些操作中LINQ实际上可以帮助我编写更短和/或更可读的代码?

这个问题引发了这个问题

.net c# linq vb.net

6
推荐指数
3
解决办法
1780
查看次数

如何在代码中引用Resources文件夹

我正在将一个c ++ Qt应用程序从Windows移植到OSX,无法绕过.app包概念.我希望有人能帮助我理解.

我的可执行文件存在于此处:MyProgram.app/Content/MacOS/MyProgram.exe

我的资源文件夹位于此处:MyProgram.app/Content/Resources/

在我的代码中,我使用相对路径来引用资源文件夹中的项目:

"../Resources/something.png"

如果我打开.app包并直接运行.exe,这很有用.

但这不是.app包的工作方式.用户应该在Finder中单击.app包以运行该程序.但在那种情况下,我的相对路径不再有效,这是我不明白的.

有谁理解我的问题以及如何解决它?

c++ macos qt bundle

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

Java是否需要重启?

Java现在已经快14岁了,而且这个时代已经开始显现.在我的行业(银行业),我们开玩笑说Java是21世纪的COBOL; 除了它不是一个笑话,这是悲伤的现实.

Java有许多"包袱",这些"包袱"是为了向后兼容而保留的 - 这对于像银行这样的客户来说至关重要.但我经常认为现在是重启的时候了.只需阅读"Java Puzzlers"即可找到语言设计中的痛点列表.我不是在责怪语言设计师 - 在过去的14年中学到了很多经验教训!但是,我真的很喜欢一些重大变化,这些变化可以很好地打破向后兼容性,同时使语言更好.

以下是我在语言中更改的(非常部分)列表:

  • 删除所有已弃用的项目.现在是时候了,Thread.stop和好友会死.
  • 禁止超载.那是一个错误.(我知道这个有点有争议,但......)
  • 构造者必须是私人的.静态方法应该用作工厂方法来获取实例.这允许主要和重要的优化.(再次,有争议,但学术界似乎同意.另见有效Java中的第1项.)
  • 删除死的/错误设计的API部分.特别是,修复Date类.
  • 放下"敲定".
  • 删除对泛型类的"原始"变体的支持.没有更多的List; 它必须是List<Something>.
  • 属性.当你在它时,没有非私人领域.
  • 提供"equals"的默认实现,迭代字段并调用它们的"equals"; 允许一些注释("@NonState")标记不属于相等测试的字段.
  • "=="应该调用equals(); 添加一个新的运算符"is",用于标识.
  • 从Object中删除"clone"; 只有实现Cloneable的对象才应该有这个方法.
  • 为测试类提供特殊注释; 测试类应该能够访问同一个包中所有类的私有成员.
  • 在库中充分利用Enums - 很明显,许多旧类使用int常量代替.
  • 删除"Thread.run"; Thread.start应该接受一个Runnable对象(你会惊讶于我看到的调用Thread.run而不是Thread.start的bug数量).

这只是我的头脑......所以,我想听听:

  • 你是否同意重启Java(一个破坏与旧代码兼容的新版本)将是一件好事?
  • 什么是你的宠儿,你认为需要用语言固定的东西?我自己的例子集中在可复杂性破坏项目上 - 在当前Java中你不能做的事情而不破坏现有代码.但也欢迎其他想法.

澄清:我不是在寻找一种新语言(如Scala或C#).我正在寻找一些显然仍然是Java的东西 - 但需要为现有代码进行一些移植工作.请注意,对于我建议的许多更改,代码可以自动或半自动移植.我知道银行不会很快采用它(嘿,我那里工作)但我也知道银行经常开始新项目,并且喜欢利用现有程序员的知识,同时享受更好的语言.

对于所有那些声称,对于我的许多建议,团队可以只执行自己的规则(例如,没有超载):足够真实,但我们高度依赖第三方代码.不是每个人?

java programming-languages

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

使此函数对null /空字符串等进行防御

如何使这个函数对null/empty字符串更加"防御"?

function getSecondPart(str) {
    return str.split('-')[1];
}
Run Code Online (Sandbox Code Playgroud)

javascript

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

Python序列化词法闭包?

有没有办法使用标准库在Python中序列化词法闭包?泡菜和元帅似乎不适用于词法封闭.我真的不关心二进制与字符串序列化等细节,它只需要工作.例如:

def foo(bar, baz) :
    def closure(waldo) :
        return baz * waldo
    return closure
Run Code Online (Sandbox Code Playgroud)

我希望能够将闭包实例转储到文件中并将其读回.

编辑:可以解决这个问题的一个相对明显的方法是使用一些反射技巧将词法闭包转换为类对象,反之亦然.然后可以转换为类,序列化,反序列化,转换回闭包.哎呀,鉴于Python是鸭子类型,如果你重载类的函数调用操作符使它看起来像一个函数,你甚至不需要将它转换回闭包,使用它的代码不会知道区别.如果有任何Python反射API大师,请说出来.

python serialization closures

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

指定Android项目依赖项(在Eclipse中)

我有两个Android项目,一个包含自定义布局的"库项目",以及一个包含使用该布局的应用程序的"应用程序项目".

除了可视布局编辑器抛出一个ClassNotFoundException(我认为这是插件中的一个错误)之外,所有东西似乎都构建并执行得很好,但是当我尝试开始使用我为自定义布局定义的属性时xml,我再也无法构建了.那是; 这工作:

<?xml version="1.0" encoding="utf-8"?>
<se.fnord.android.layout.PredicateLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
  <TextView
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="asdfasdf"
    />
</se.fnord.android.layout.PredicateLayout>
Run Code Online (Sandbox Code Playgroud)

然而,这不是:

<?xml version="1.0" encoding="utf-8"?>
<se.fnord.android.layout.PredicateLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:fnord="http://schemas.android.com/apk/res/se.fnord.android"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
  <TextView
    fnord:layout_horizontalSpacing="1px"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="asdfasdf"
    />
</se.fnord.android.layout.PredicateLayout>
Run Code Online (Sandbox Code Playgroud)

构建失败,来自aapt的消息:

错误在包'se.fnord.android'中找不到属性'layout_horizo​​ntalSpacing'的资源标识符

资源标识符确实存在于R文件中,而attrs.xml包含库项目,如果我将布局代码和资源直接放在应用程序项目中,一切正常.layout_horizo​​ntalSpacing属性(和layout_verticalSpacing)是PredicateLayout.LayoutParam类中使用的自定义属性,用于指定到下一个窗口小部件的距离.

到目前为止,我已经通过指定项目引用和构建路径项目依赖项来尝试标准的eclipse方法.我还被告知在应用程序清单中尝试标记,但没有帮助.

那么,我需要做什么才能使xml文件中的引用有效?

我不知道它是否相关,但'library'清单看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="se.fnord.android"
      android:versionCode="1" android:versionName="1.0.0">
</manifest>
Run Code Online (Sandbox Code Playgroud)

"应用程序"显示如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="se.fnord.appname"
      android:versionCode="1" android:versionName="1.0.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".AppName"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

(在"PredicateLayout",顺便说一句,是的清理后的版本).

eclipse dependencies android

21
推荐指数
3
解决办法
4万
查看次数