我正在为项目的每个 sql 调用创建新线程。有数百万个 sql 调用,因此我在新线程中调用一个过程来处理 sql 调用。
在此过程中,我想增加和减少一个计数器,以便我知道这些线程何时完成 SQL 查询。
令我惊讶的是,计数器的输出显示负值。如何?当我从 0 开始并在过程开始时加 1 并在过程结束时减 1 时?
这个 int 没有在程序的其他地方被调用。以下是代码。
public static int counter=0;
while(!txtstream.EndOfStream)
{
new Thread(delegate()
{
processline();
}).Start();
Console.WriteLine(counter);
}
public static void processline()
{
counter++;
sql.ExecuteNonQuery();
counter--;
}
Run Code Online (Sandbox Code Playgroud)
输出看起来像这样:
1
21
-2
-2
5
Run Code Online (Sandbox Code Playgroud) 我想问一下有没有什么办法可以在Java中写一个while循环,在循环中也有主计数器,也就是说当你退出循环时,计数器变量也会被销毁。
例如,当我们退出这个循环时:
for (int i = 0; i < 10; i++) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
变量 i 也被销毁,从而保持代码干净。
但是对于while循环,我们必须在循环本身之外创建一个计数器变量;因此,当循环退出时,计数器变量仍然存在于主程序中。
int counter = 0;
while (counter < 10) {
counter++;
}
counter--; //we can still manipulate the counter variable here
Run Code Online (Sandbox Code Playgroud)
我想问的是:有没有办法将计数器变量放在while循环本身中,例如:
while ( (int i = 0) < 10 ) {
counter++;
}
Run Code Online (Sandbox Code Playgroud) 我需要构建一个函数,它获取一个字母数字字符串 (0, 1, ... , 8, 9, A, B, C, ... , Z),加 1 并返回字符串。例如:给定 02H9Z,函数应返回 02HA0。
我在网上找到了几个随机的字母数字字符串生成器。他们工作得很好,但不能解决我的问题。然后我开始编写一个函数,该函数检查 for 循环中的每个字符,并将其与 'A'、'B'、...进行比较 - 但我认为这效率不高。
谁能想到更好的解决方案?
我有一个对象,例如
{
a: {
x: 1,
y: 2
},
b: {
x: 1,
y: 2
},
c: {
x: 100,
y: 2
},
}
Run Code Online (Sandbox Code Playgroud)
我想计算满足条件的元素数量x: 1。有没有直接的方法来做到这一点?
我可以采用简单的方式,但我想学习 JavaScriptonic 方式(如果有的话):
{
a: {
x: 1,
y: 2
},
b: {
x: 1,
y: 2
},
c: {
x: 100,
y: 2
},
}
Run Code Online (Sandbox Code Playgroud)
我目前正在为此使用 Counter() 方法。但我面临的问题是,当有多个元素具有相同数量的值时,我会得到列表中最先出现的 number 键值。
a=[1,3,2,2,3]
coun=Counter(a)
print(coun.most_common(1))
Run Code Online (Sandbox Code Playgroud)
输出: [(3,2)]
a=[1,2,3,2,3]
coun=Counter(a)
print(coun.most_common(1))
Run Code Online (Sandbox Code Playgroud)
输出: [(2,2)]
我想获得较低的键值,而不是首先出现的键值,即 2,无论顺序如何。我可以对列表进行排序,但我认为排序会占用大量时间。请帮忙 抱歉格式混乱。
假设我有以下列表:
l1 = ['Hello', 'world', 'world']
l2 = ['Hello', 'world', 'world', 'apple']
Run Code Online (Sandbox Code Playgroud)
因为l1我将不同的元素计算为:
Counter(l1)
Run Code Online (Sandbox Code Playgroud)
这给出了:
Counter({'Hello': 1, 'world': 2})
Run Code Online (Sandbox Code Playgroud)
现在我想通过l2并将上面的值分配给它,以便我得到:
[1,2,2,0]
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,apple我们分配了 0,因为计数器中没有它的值。我想知道我该怎么做?
在这个练习中,我创建了一个计数器,它有一个数字显示屏和 2 个用于减少和增加数字的按钮。我将数字分配给 parseInt(num) 以将 num 对象转换为数字。我使用警报来检查号码类型。typeof(number) 返回数字,但数字返回 NaN。请有人解释一下。[编辑]阅读评论,我能够解决问题。我已经更新了解决方案
var low = document.getElementById("low")
var add = document.getElementById("add")
low.addEventListener("click", function () {
var num = document.getElementById("num")
var number = parseInt(num.innerText)
num.innerHTML = number - 1
})
add.addEventListener("click", function () {
var num = document.getElementById("num")
var number = parseInt(num.innerText)
num.innerHTML = number + 1
})Run Code Online (Sandbox Code Playgroud)
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<!-- <link rel="stylesheet" href="style.css"> -->
</head>
<body>
<div class="container">
<h1>counter</h1>
<h1 id="num">0</h1>
<div class="btn"> …Run Code Online (Sandbox Code Playgroud)我正在尝试开发一个SMS计数器应用程序,其中我要计算当前日期的所有SMS。我不想计算收件箱中的短信总数。我正在使用以下代码,但未获得确切结果。它正在计算收件箱中的短信总数。
TextView视图=新的TextView(this);
Uri uriSMSURI = Uri.parse("content://sms/inbox");
Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,null);
/*
int nsm = 0;
while(cur.moveToNext()){
nsm+= + cur.getCount();
}
*/
String sms = "";
while ( cur.moveToNext());{
// sms += "From :" + cur.getString(2) + " : " + cur.getString(11)+"\n";
// sms += cur.getString(2);
sms += "Total SMS in the INBOX : "+cur.getCount();
}
view.setText(sms);
setContentView(view);
Run Code Online (Sandbox Code Playgroud)
我是一个新学习者。提前致谢。
计数器的增量在我的代码中有效,但是我想在第一部分的100开始计数,在下一部分的200开始计数。
这就是我得到的:
Chapter>Section>Subsec1>Subsec2>Tit {
display: block;
text-align: left;
font-weight: bold;
margin-top: 15px;
font-size:16px;
counter-increment: subsection2;
}
Run Code Online (Sandbox Code Playgroud)
有一个简单的解决方案吗?
我不认为自己在编程方面表现不好,但自从过去几天以来,我一直有些困扰我.
int counter = 3;
++counter;
Run Code Online (Sandbox Code Playgroud)
以下代码与上面的代码相同counter++;.
counter ×10
python ×3
css ×2
html ×2
java ×2
javascript ×2
list ×2
addition ×1
alphanumeric ×1
android ×1
c# ×1
increment ×1
loops ×1
python-3.x ×1
sms ×1
sql ×1
while-loop ×1