问题列表 - 第41994页

重构如果(... instanceof ...)

我目前正在尝试重构一个看起来像这样的项目的一部分:

很多班

 B extends A; C extends A; D extends C; E extends B; F extends A; ...
Run Code Online (Sandbox Code Playgroud)

在代码的某处:

if (x instanceof B){
 B n = (B) x;
 ...
}else if (x instanceof C){
 C n = (C) x;
 ...
}else if (x instanceof D){
 D n = (D) x;
 ...
}else if (x instanceof E){
 E n = (E) x;
 ...
}else if (x instanceof G){
 G n = (G) x;
 ...
}...
Run Code Online (Sandbox Code Playgroud)

上面的if-construct目前位于一个CC为19的函数中.现在我的问题是:我可以将这个if-construct拆分为多个函数并让Java的OO做神奇吗?或者有什么捕获我需要注意的?

我的想法:

private void oopMagic(C obj){ …
Run Code Online (Sandbox Code Playgroud)

java oop

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

通过Web服务从服务器向客户端发送pdf文件

由于我是网络服务新手,请您回答我的问题.我的问题是

我想实现一个Web服务,当客户端调用此Web服务时,该服务将pdf文件发送到客户端.

请有人帮我处理好的代码或解释.

现在可以请一些人解决我的错误.

12-23 09:42:48.429:DEBUG/installd(32):DexInv:--- BEGIN'/ data/app/vmdl33143.tmp'--- 12-23 09:42:51.708:DEBUG/dalvikvm(328) :DexOpt:'Lorg/xmlpull/v1/XmlPullParser;' 有一个较早的定义; 阻止
12-23 09:42:51.730:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/io/KXmlParser;' 有一个较早的定义; 阻止
12-23 09:42:51.749:DEBUG/dalvikvm(328):DexOpt:'Lorg/xmlpull/v1/XmlSerializer;' 有一个较早的定义; 阻止
12-23 09:42:51.759:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/io/KXmlSerializer;' 有一个较早的定义; 阻止
12-23 09:42:51.779:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/kdom/Node;' 有一个较早的定义; 阻止
12-23 09:42:51.779:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/kdom/Document;' 有一个较早的定义; 阻止
12-23 09:42:51.819:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/kdom/Element;' 有一个较早的定义; 阻止
12-23 09:42:51.830:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/Wbxml;' 有一个较早的定义; 阻止
12-23 09:42:51.840:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/WbxmlParser;' 有一个较早的定义; 阻止
12-23 09:42:51.900:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/WbxmlSerializer;' 有一个较早的定义; 阻止
12-23 09:42:51.910:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/syncml/SyncML;' 有一个较早的定义; 阻止
12-23 09:42:51.910:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/wml/Wml;' 有一个较早的定义; 阻止
12-23 09:42:51.929:DEBUG/dalvikvm(328):DexOpt:'Lorg/kxml2/wap/wv/WV;' 有一个较早的定义; 阻止
12-23 09:42:51.929:DEBUG/dalvikvm(328):DexOpt:'Lorg/xmlpull/v1/XmlPullParserException;' 有一个较早的定义; 阻止
12-23 09:42:51.949:DEBUG/dalvikvm(328):DexOpt:'Lorg/xmlpull/v1/XmlPullParserFactory;' 有一个较早的定义; 阻止
12-23 09:42:53.299:INFO/dalvikvm(328):DexOpt:没有解决模糊类'Lorg/xmlpull/v1/XmlPullParser;'
12-23 09:42:53.319:INFO/dalvikvm(328):DexOpt:没有解决模糊类'Lorg/xmlpull/v1/XmlPullParser;'
12-23 09:42:53.329:INFO/dalvikvm(328):DexOpt:没有解决模糊类'Lorg/xmlpull/v1/XmlPullParser;'
12-23 09:42:53.350:INFO/dalvikvm(328):DexOpt:没有解决模糊类'Lorg/xmlpull/v1/XmlPullParser;'
12-23 09:42:53.350:INFO/dalvikvm(328):DexOpt:没有解决模糊类'Lorg/xmlpull/v1/XmlPullParser;'
12-23 …

java android web-services java-ee

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

复制unsigned char数组

将unsigned char数组复制到另一个的最佳方法是什么?

例如:

unsigned char q[1000];
unsigned char p[1000];

strcpy (q,&p);
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用,它给我错误说"无法将参数1从unsigned char [1000]转换为char*".

c string strcpy unsigned-char

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

log4j和java.util.logging有什么区别

哪个最适合获取用户登录其帐户的日志文件?用一个小例子来解释......谢谢你的时间......

java log4j java.util.logging

6
推荐指数
1
解决办法
2950
查看次数

什么 - >是什么意思?

我是Objective-C的一个相对新手(只研究了Arron Hillegras的书)并且对我在Apple的一个代码示例中发现的下面的代码片段感到困惑,特别是 - >是什么意思?

-(id) initWithNumbers:(NSArray *)numbers
{
    self = [super init];
    if (self != nil)
    { 
       self->_numbers = [numbers copy];
    }
    return self;
}
Run Code Online (Sandbox Code Playgroud)

在头文件中_numbers被声明为

NSNumber * _number;
Run Code Online (Sandbox Code Playgroud)

(下划线有一些重要意义,因为我记得在某个地方读过这个内容,但此刻我也没想到.

谢谢罗宾

objective-c

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

需要帮助Qt中的正则表达式(QRegExp)[重复语法错误?]

void MainWindow::whatever(){
    QRegExp rx ("<span(.*?)>");
    //QString line = ui->txtNet1->toHtml();
    QString line = "<span>Bar</span><span style='baz'>foo</span>";
    while(line.contains(rx)){
        qDebug()<<"Found rx!";
        line.remove (rx);
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经使用这个工具在线测试了正则表达式.使用给定的正则表达式字符串和<span style="foo">Bar</span>工具的示例文本说它应该在字符串中找到正则表达式.但是,在我的Qt代码中,我永远不会进入我的while循环.

我以前从未用过Qt或任何其他语言的正则表达式.有人能提供一些帮助吗?谢谢!

[edit]所以我发现errorString()如果正则表达式无效,QRegExp有一个函数可以使用.我输出这个并看到:"糟糕的重复语法".不太确定这意味着什么.当然,谷歌搜索"糟糕的重复语法"提出了...这篇文章.该死的谷歌,你快.

c++ regex qt qregexp

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

MVVM默认按钮比TextBox提交文本更快地到ViewModel

当我使用DefaultButton(编辑登录+ Tab,编辑密码+ Enter)输入登录密码时,该X.Password属性仍未更改.那么当我使用DefaultButton时如何提交密码?

member X.Password
    with get()      = password
    and set value   = 
        password <- value
        X.OnPropertyChanged "Password"

member X.LoginCommand =
    new RelayCommand ((fun canExecute -> true), (fun action ->
            X.SelectedAccount <-
                match
                    X.Accounts
                    |> Seq.filter (fun acc -> 
                        acc.Name        = login && 
                        acc.Password    = password) with
                    | s when Seq.isEmpty s -> 
                        X.ConvertButtonEnabled <- false
                        ignore <| MessageBox.Show(sprintf 
                            "User %s doesn't exist or password incorrect password" X.Login) 
                        {Name=""; Role=""; Password=""; ExpenseLineItems = []}
                    | s …
Run Code Online (Sandbox Code Playgroud)

wpf f# mvvm

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

如何将控件的属性"重置"为其原始样式值(如背景)

我的项目中有一个简单的textBox.

我做了这种风格(为了说明目的):

<Style x:Key="{x:Type TextBox}" TargetType="{x:Type TextBox}">
    <Style.Setters>
        <Setter Property="Background" Value="LightGray"/>
    </Style.Setters>
</Style>
Run Code Online (Sandbox Code Playgroud)

然后在某一点上,我正在做:MyTextBox.Background = Brushes.Red在我的代码隐藏中.

到那里,一切正常.

现在我希望能够恢复原始的背景颜色,但没有硬编码.

即:我知道我可以做MyTextBox.Background = Brushes.LightGray,但我正在寻找一种通用的方式,使我能够恢复到原始风格的背景属性,而不知道它.

我尝试将其设置为null,但当然它给了我一个透明的背景,这不是我想要的.

这有可能吗?如果是的话,我怎样才能实现这一目标?

谢谢

wpf xaml styles

7
推荐指数
1
解决办法
5646
查看次数

查看存储的cookie或在浏览器中调试

我创建了一个存储cookie的网页,以记住用户在方案查看器中放置的ID.它适用于IE,Firefox和Chrome的桌面版本.但是,当我尝试使用Android或iPhone访问它时,它不起作用.

我想知道的是你如何看待存储的cookie或如何调试JavaScript/HTML/CSS.如果我查看桌面Firefox中的错误,我会发现JavaScript和CSS没有错误.

javascript debugging cookies android

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

根据列表视图的内容对listview中的相似行进行分组

我有一个列表视图,显示一组行,每行都是可点击的.现在,我希望在一个标题下对相似类型的行进行分组,如图所示(模拟).有些人可以为此提供建议或提供方法. 样机图像

android listview android-listview

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