问题列表 - 第32188页

Java等于()排序

如果我尝试.equals()在java中对空字符串执行操作,则会抛出空指针异常.我想知道,如果我想比较一个字符串是否等于某个常量字符串,我可以执行以下操作:

MY_CONSTANT_STRING.equals(aStringVariable)
Run Code Online (Sandbox Code Playgroud)

我知道它会起作用,但这只是非常糟糕的代码吗?

java string

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

JPA:何时选择多值关联与元素集合映射

我想更好地理解两者之间的差异

(1)传统的多值关系/关联

   @Entity -> @OneToMany -> @Entity
Run Code Online (Sandbox Code Playgroud)

(2)JPA2 可嵌入(和基本)类型的集合

  @Entity -> @ElementCollection -> @Embeddable
Run Code Online (Sandbox Code Playgroud)

我看到了语法差异,但想知道是否还有性能影响.在幕后,数据库实现看起来非常相似.

直觉上,我通常会使用@ElementCollectionfor 组合场景.但即使这感觉非常相似CascadeType=DELETE.

我错过了这里的精华吗?出于某些目的,一个比另一个更有效吗?

谢谢你,J.

java orm hibernate jpa jpa-2.0

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

PHP中遍历树的数据结构?

我没有CS或数据结构的背景知识.我想创建一个PHP类,它存储一个修改过的预订序横向树,用于操作和与数据库同步.

基本上我需要存储数据,如:

+-------------+----------------------+-----+-----+
| category_id | name                 | lft | rgt |
+-------------+----------------------+-----+-----+
|           1 | ELECTRONICS          |   1 |  20 |
|           2 | TELEVISIONS          |   2 |   9 |
|           3 | TUBE                 |   3 |   4 |
|           4 | LCD                  |   5 |   6 |
|           5 | PLASMA               |   7 |   8 |
|           6 | PORTABLE ELECTRONICS |  10 |  19 |
|           7 | MP3 PLAYERS          |  11 |  14 | …
Run Code Online (Sandbox Code Playgroud)

php mptt modified-preorder-tree-t data-structures

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

如何基于变量值习惯性地调用C++函数?

假设我有一个数据类型enum TreeTypes { TallTree, ShortTree, MediumTree }.

我必须根据一种特定的树类型初始化一些数据.

目前我已经写了这段代码:

int initialize(enum TreeTypes tree_type) {
    if (tree_type == TallTree) {
        init_tall_tree();
    }
    else if (tree_type == ShortTree) {
        init_short_tree();
    }
    else if (tree_type == MediumTree) {
        init_medium_tree();
    }
    return OK;
}
Run Code Online (Sandbox Code Playgroud)

但这是某种愚蠢的代码重复.我没有使用任何强大的C++功能,如模板.

我怎么能更好地编写这段代码?

谢谢,Boda Cydo.

c++ templates repeat

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

PHP if语句?

嗨,我想知道我可能做错了什么.我有两个条件返回true或false.出于同样的原因它不起作用.如果有人指出我可能做错了什么,我将不胜感激.

<?php  
  $pagetype = strpos($currentPage, 'retail');
  if(isset($quoterequest) && $pagetype === True && $currentPage !== 'index.php'){
    echo "this is retail" ;
  }elseif(isset($quoterequest) && $pagetype === False && $currentPage !== 'index.php'){
    echo "this is restaurant";
  }                               
?>
Run Code Online (Sandbox Code Playgroud)

编辑 - 抱歉我编辑它但由于某种原因没有出现.基本上,如果发现它,脚本会查看网址"零售",如果不是"这是餐厅",它应该返回"这是零售"

quoterequest只是一个变量

$quoterequest = "washington"
Run Code Online (Sandbox Code Playgroud)

并且当前页面来自

<?php $currentPage = basename($_SERVER['SCRIPT_NAME']);
Run Code Online (Sandbox Code Playgroud)

只是为了清楚.网址是这样的结构

www.example.com/retail-store.php www.example.com/store.php

php

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

如果有错误,想要在Build之后切换到错误列表

我使用VS 2008在C#中开发.

有没有办法配置VS 2008所以如果有Build Errors它会自动切换到"Error List"窗口?

visual-studio-2008

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

如何使用NSFetchedResultsController设置NSPredicate以过滤指定组中的项目

我有一个具有许多Item实体的Group实体.Item实体可以位于多个组中.我模型的相关部分如下所示:

替代文字

问题

我打电话的时候

[fetchedResultsController performFetch:&error]
Run Code Online (Sandbox Code Playgroud)

我在控制台中收到此错误

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'to-many key not allowed here' ***
Run Code Online (Sandbox Code Playgroud)

我很确定问题出在我如何在这里设置谓词:

[NSPredicate predicateWithFormat:@"groups == %@", self.group];
Run Code Online (Sandbox Code Playgroud)

但我不知道我做错了什么.我已经阅读了NSPredicate文档,我试过这个:

[NSPredicate predicateWithFormat:@"ANY groups IN %@", [NSArray arrayWithObject:self.group]];
[NSPredicate predicateWithFormat:@"ANY groups LIKE %@", self.group];
[NSPredicate predicateWithFormat:@"ANY groups == %@", self.group];
[NSPredicate predicateWithFormat:@"ANY groups IN %@", [NSArray arrayWithObject:self.group]];
[NSPredicate predicateWithFormat:@"groups == %@", self.group];
Run Code Online (Sandbox Code Playgroud)

这些都不起作用.这必须简单,但我无法弄清楚.我只是希望谓词过滤所有项目,以便只返回组成员(通过模型关系)的项目.你怎么做到这一点?

我有一个NSFetchedResultsController,我试图配置为只显示特定组中的项目.我设置NSFetchedResultsController的代码如下所示:

// create the fetch request
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];

// configure the entity
NSEntityDescription *entity = [NSEntityDescription …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch core-data

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

替代DISTINCT功能

除了使用DISTINCT函数之外,还有没有更好的方法来从一个表的三列中获取所有不同的值?我也尝试过了GROUP BY,但是在成本上似乎没有任何明显的区别。

SELECT DISTINCT Table1.Col1, Table2.Col1, Table1.Col3
FROM Table1 
INNER JOIN Table2 ON Table1.FK = Table2.ID
WHERE Table1.Foo = 1865 AND Table2.Type = 1
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server performance distinct

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

(FInite State Machine) - 在javascript中实现XML模式验证器

我已经在一个项目上工作了一个月左右,现在用javascript开发XML验证器(XSD).我已经非常接近但仍然遇到问题.

我唯一能运作良好的是将模式结构规范化为存储在DOM中的FSA.我已经尝试了几种方法来针对FSA验证我的xml结构,并且每次都变短.

验证器用于运行客户端WYSIWYG XML编辑器,因此它必须满足以下要求

  • 必须高效(即使使用复杂模型,<15ms也可以验证元素子节点模式)
  • 必须公开一个后验证模式信息集(PSVI),可以查询该信息以确定可以在各个点从文档中插入/删除哪些元素,并使文档保持有效.
  • 必须能够验证xml子节点结构,如果无效则返回哪些内容为EXPECTED或哪些内容为UNEXPECTED.

- 更多信息请考虑以下示例 -
首先,我将模式结构转换为一般FSA表示,规范化xs:group和xs:import之类的命名空间.例如考虑:

<xs:group name="group1">
    <xs:choice minOccurs="2">
         <xs:element name="e2" maxOccurs="3"/>
         <xs:element name="e3"/>
    </xs:choice>
</xs:group>
<xs:complexType>
    <xs:seqence>
        <xs:element name="e1"/>
        <xs:group ref="group1"/>
    </xs:sequence>
<xs:complexType>
Run Code Online (Sandbox Code Playgroud)

将被转换为类似的广义结构:

<seq>
    <e name="e" minOccurs="2"/>
    <choice minOccurs="2">
         <e name="e2" maxOccurs="3"/>
         <e name="e3"/>
    </choice>
</seq>
Run Code Online (Sandbox Code Playgroud)

我通过XQuery和XSLT在所有服务器端执行此操作.

我构建验证器的第一次尝试是使用javascript中的递归函数.在此过程中,如果我发现可能存在的内容,我会将其添加到全局PSVI信号中,表明它可以添加到层次结构中的指定点.

我的第二次尝试是迭代的,而且速度要快得多,但这两次都遇到了同样的问题.

这两个都可以正确验证简单的内容模型,但是一旦模型变得更复杂并且非常嵌套,它们就会失败.

我想我正在从完全错误的方向接近这个问题.根据我所读到的,大多数FSA是通过将状态推送到堆栈来处理的,但我不确定如何在我的情况下执行此操作.

我需要就以下问题提出建议:

  1. 状态机是否是正确的解决方案,它是否会实现顶部所述的目标.
  2. 如果使用状态机是什么最好的方法将架构结构转换为DFA?汤普森算法?我是否需要优化DFA才能使其正常工作.
  3. 什么是最好的方式(或最有效的方式)在javascript中实现这一切(注意优化,并且预处理可以在服务器上完成)

谢谢,

卡西

其他编辑:

我一直在看这个教程:http : //www.codeproject.com/KB/recipes/OwnRegExpressionsParser.aspx专注于正则表达式.它似乎与我需要的非常相似,但专注于为正则表达式构建解析器.这带来了一些有趣的想法.

我认为xml架构只分解为几个运算符:

sequence - > Concatination
choice - > union
minOccurs/maxOccurs - 可能需要更多Kleene Closure,不能完全确定表示此运算符的最佳方法.

javascript xml xsd finite-automata

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

如何组织C#类

有关如何在C#中组织类的常规做法吗?每个.cs文件只应该有一个泛型类吗?我看到我有Form1.cs,其中包含与"Form1"相关的所有类.但是我可以创建一个名为Misc.cs的文件,其中包含所有misc类.不知道要走哪条路,所以一切都井井有条.

或者我应该以特定的方式组织它们?例如,我正在访问一个MySQL数据库,所以我正在创建一个MySQL包装器,我将它存储在MysqlWrapper.cs中并命名该类以匹配它.我应该为我创建的每个类创建一个新的.cs吗?

或者我应该只使用类似"使用"命名空间的那些,例如System.Text; 使用System.Windows.Forms; 等等?

c#

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