我有一种情况需要根据内容创建列.
例如,这里是SQLFiddle - http://sqlfiddle.com/#!2/0ec7a/1.
我需要得到这样的结果:
--------------------------
| CITY | MALES | FEMALES |
--------------------------
| NY | 5 | 2 |
--------------------------
| DC | 2 | 1 |
--------------------------
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
我正在查看MySQL手册中的CASE WHEN陈述和IF陈述,但更清楚的解释将非常有用.
我有一个问题需要解决,我需要在Java中创建一个会计和簿记解决方案(现在只是后端).他们要求系统存储以前给定产品的价格,所以我决定选择HashMap<Date,Integer>.
现在问题是,系统必须能够在给定时间内检索价格,用于记帐,追溯购买(订单存储物品和购买时间,因此可以轻松回顾).这将是好事,但如果购买日期与价格设置日期不匹配,则简单的get方法返回null.到目前为止,我还没有能够找出在购买日期之前查找第一个上一个日期的搜索方法,以返回价格.
有没有建议的方法来解决这个问题?
我正在开发一个通用的Android游戏引擎,它将在我的许多Android应用程序中用作基本系统.问题是,在我的所有Java文件中,我目前必须对软件包名称进行硬编码,如下所示:
package com.example.mygameengine;
Run Code Online (Sandbox Code Playgroud)
但是因为我想在许多不同的应用程序中使用我的通用游戏引擎的代码,我需要找到一种方法来在编译时指定Java文件的包名称,因为我不想保留我的Java源代码的几个副本因为包名的不同.我希望有一个中央源代码树,包名称应该可以动态更改,具体取决于我即将编译的应用程序.
那么有办法做这样的事情:
package $(PACKAGE_NAME)
Run Code Online (Sandbox Code Playgroud)
在Java源代码中,在编译时将$(PACKAGE_NAME)替换为真实的包名?也许javac有一个选项允许我为它传递的文件指定一个包名,而不是从文件本身中取出它?请注意,我没有使用Eclipse,而是使用ant和make等准系统命令行工具.
编辑:我不明白为什么这被标记为重复.我已经问过一个基本问题,即Java语言中的"package"指令是否需要源代码中的硬编码字符串参数,或者是否也可以使用编译器指令在编译时设置此包名称.这是一个完全不同的问题,而不是在这里被链接为假定的"原始"问题,它与Android构建系统关系更紧密.我的问题是关于Java语言的基础知识,而不是Android构建系统.
我取出由MySQL表数据它工作正常,但它显示NULL了Status在两个领域.我想要而不是NULL表演0.
这是我的查询:
SELECT ml.GroupID, ml.GroupTitle, ml.GroupDescription, ml.GroupCreatedDateTime, ml.GroupOwnerUserID, ml.ApprovalNeeded, ml.GroupStatus, ml.OrganizationCode, cat.Status
FROM GroupsMaster AS ml
LEFT JOIN UserGroupsMapping cat ON cat.GroupID = ml.GroupID
WHERE ml.OrganizationCode = ?
Run Code Online (Sandbox Code Playgroud) 假设我想生成从ArrayList中获取的随机数:(1,2,3,4,5,6,7,8,9,10)
随机生成器产生5.
列表更新 - AL:(1,2,3,4,6,7,8,9,10)
下一个随机数不能是5.
我正在编写一个从arraylist生成随机数的程序,一旦生成随机数,列表就会删除该数字,下一个随机生成的数字不能是该数字.
ArrayList<Integer> numsLeft = new ArrayList<Integer>(Arrays.asList(1,2,3,4,5,6,7,8,9,10));
Random randomGenerator = new Random();
int number = 0;
String cont;
do
{
number = randomGenerator.nextInt(numsLeft.size());
numsLeft.remove(number);
System.out.println (number + " continue (y/n)");
cont = (stdin.readLine());
}
while (cont.equalsIgnoreCase("y"));
Run Code Online (Sandbox Code Playgroud)
但我唯一可以做的就是减小尺寸......
http://docs.oracle.com/javase/7/docs/api/java/util/Random.html
我看到代码Java Builder Pattern.除了下面的代码,一切都很好:
public static void main(String[] args) {
NutritionFacts cocaCola = new NutritionFacts.Builder(240, 8)
.calories(100).sodium(35).carbohydrate(27).build();
}
Run Code Online (Sandbox Code Playgroud)
NutritionFacts构造函数是私有的,Builder内部类是静态的.因此,我们可以访问使用这个类NutritionFacts.Builder,但为什么它使用了新的关键字样new NutritionFacts.Builder(240, 8)?
我们动态生成可折叠内容,如下所示:
$('#'+object.TARGET).html(response).trigger('create');
Run Code Online (Sandbox Code Playgroud)
可折叠的工作非常好
<div data-role="collapsible" id="ims-page-start-content-detail-vertrag">
<h2>Mieter</h2>
<p></p>
</div>
Run Code Online (Sandbox Code Playgroud)
但是如果我们想要使用expand-event:
$("#ims-page-start-content-detail-vertrag").on( "collapsibleexpand", function( event, ui ) { alert("test"); } );
Run Code Online (Sandbox Code Playgroud)
要么
$("#ims-page-start-content-detail-vertrag").collapsible({
expand: function( event, ui ) { alert("test"); }
});
Run Code Online (Sandbox Code Playgroud)
没有回答!我们做错了什么?坦克很多;-)
我们加上这个:
$(document).off('pageshow','#ims-page-start').on('pageshow','#ims-page-start',function(){
$('#ims-page-start-content-detail-vertrag').bind('expand', function () { alert('Expanded');
}).bind('collapse', function () {
alert('Collapsed');
});
});
Run Code Online (Sandbox Code Playgroud)
但这仍然无法正常工作!我们认为问题是如何动态生成可折叠的
假设我有两个列表:fooList和barList.另外,假设我有两个线程:第一个迭代fooList,如果满足某些条件(条件为真),它会从fooList中删除元素并将其添加到barList.第二个迭代barList,如果某个其他条件为true,则从barList中删除元素,并将其添加到fooList.
我处理它的方式是:
private static Object sharedLock = new Object();
Thread t1 = new Thread() {
public void run() {
synchronized (sharedLock) {
for (Iterator<String> iterator = fooList.iterator(); iterator.hasNext();) {
String fooElement = iterator.next();
if (condition == true) {
iterator.remove();
barList.add(fooElement);
}
}
}
}
};
Thread t2 = new Thread() {
public void run() {
synchronized (sharedLock) {
for (Iterator<String> iterator = barList.iterator(); iterator.hasNext();) {
String barElement = iterator.next();
if (otherCondition == true) {
iterator.remove();
fooList.add(barElement); …Run Code Online (Sandbox Code Playgroud) 我有号码
1110000010
Run Code Online (Sandbox Code Playgroud)
需要格式化,以便在前3个字符后面插入一个空格,在另外3个字符后插入另一个空格,使其看起来像:
111 000 0010
Run Code Online (Sandbox Code Playgroud)
什么是简单的java正则表达式模式来实现这一目标?
我有表的用户user_id,user_name和user_dob.
我想算一下18岁以下,18-50岁以上和50岁以下的用户数量.
需要改进Age计算方法来计算确切的年龄,但是现在我更感兴趣的是找到计算方法
所以我尝试过:
SELECT COUNT ([user_id])
from [user]
where (DATEDIFF(yy,[user_dob], GETDATE()) < 18)
UNION ALL
SELECT COUNT ([user_id])
from [user]
where (DATEDIFF(yy,[user_dob], GETDATE()) >= 18 AND DATEDIFF(yy,[user_dob], GETDATE()) <=50)
UNION ALL
SELECT COUNT ([user_id])
from [user]
where (DATEDIFF(yy,[user_dob], GETDATE()) > 50)
Run Code Online (Sandbox Code Playgroud)
它给我的结果如下:
(No column name)
1218
3441
1540
Run Code Online (Sandbox Code Playgroud)
但我需要这样的东西
Range | Count
----------------
Under 18 | 1218
18-50 | 3441
Over 50 | 1540
Run Code Online (Sandbox Code Playgroud)
有关如何存档以上格式的任何建议?