我对java很陌生,我尝试了一些访问方法,我遇到了一些我不理解的东西。下面的代码工作正常,打印9,没有给出任何编译错误。我认为这段代码应该提供一个编译错误,而number应该无法从测试方法中访问,因为new ()是一个完全不同类的实例。有人能解释一下这里发生了什么吗?
public class Test{
public static void main(String[] args) {
int number = 9;
test("holla",new Human(){
@Override
我刚在Java工作,我有一个简单的问题。在以下守则中:
conversation.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
if (adapter.getItem(position).image && adapter.getI
我有一个整数数组的值,我必须为每个值计算一些数字。我试图将其并行化,例如,我将数组划分为多个分区,然后计算它自己线程中的每个分区。为此,我创建了一个for循环,该循环遍历分区,如下所示:
for (int i = 0; i < arrSplit.length; i++) {
Thread t = new Thread(new Runnable() {
@Override
public void run() {
for (int j = arrSplit[i].startIndex;
首先,如果这是一个重复的问题,我很抱歉。我发现了许多类似的问题,但没有一个能直接解决我的问题。
为了准备即将到来的考试,我正在做一篇过去的论文。它有一个问题,给出了一个代码片段。我们必须声明它是否编译,如果没有,则写第一个编译器错误发生的行并对其进行解释。这是一个片段:
public static void main(String[] args) {
JFrame f = new JFrame("hi");
JTextField jtf = new JTextField(50);
jtf.addMouseMotionListener(new Mouse
所以这让我有点疯狂。我所要做的就是将一个变量设置为一个字符
String optr = "+";
Add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
optr = "+"; // Here I am trying to initilize and I get errors
我正在使用Java 8中的lambdas,我遇到了警告local variables referenced from a lambda expression must be final or effectively final。我知道当我在匿名类中使用变量时,它们在外部类中必须是最终变量,但是仍然--最终和有效的终结之间有什么区别?
在所有的文章中,都说java是按值复制的,内部类不能访问和修改外部类的实例变量。但是现在可以做了,为什么呢?我的jdk是1.8。
public class InnerClass {
private int counts = 0;
public void test(int src) {
int in = 100;
new Thread(new Runnable() {
private int a() {
counts++;
counts = src;
关于run()方法中使用的修饰符"final“和var,我有一个简单的问题。这是我有的一些代码片段,但其他代码不起作用。我猜它不能添加到firstTime变量上,我不确定这是因为你不能用最终修饰符做到这一点,还是java只是讨厌我:/
final long firstTime = System.currentTimeMillis();
WorldTasksManager.schedule(new WorldTask() {
@Override
public void run() {
if (System.currentTimeMillis() >= firstTime)
我想对包含许多列表的ArrayList进行排序。换句话说,我有一个ArrayList,我想根据内部列表中的一个元素进行排序。例如,以下列表中的标签:[ IN,157,that,WDT,69,that,DT,33]
我希望能够选择在排序中应该使用哪一列。我想使用下面的代码。但是,它不接受内部方法的输入变量i。
public void sortCheckedTags(int i){
Collections.sort(checkedTags, new Comparator<List>(){
public int compare(List item1, List
我保证我已经看过无数关于这方面的文章,所以我猜我不能把我读到的东西翻译成我想要做的事情。首先是叙述。在这个基础上,我想要做的是在我的例子中开发一个对象的列表--对象是汽车。汽车列表显示在我的主窗口中。当我想添加一辆新车时,我打开一个对话框来设置属性并创建它。
问题是,我一直在使用对象引用进行循环运行。我尝试用公共方法创建子类,并在构造函数中传递对象。这些尝试会导致有关非静态字段或非最终变量的错误。如果我能看到一个关于如何进行引用的实例,我认为其他的都会到位。
对象
public class Car {
private String size;
public Car(String sizeIn
我是javaFX的新手,我正在尝试编程一个图形计算器。现在我想知道是否有一种通过使用setOnAction按一个按钮来改变值的方法?
public class exampleFX extends Application{
public static void main(String[] args){
launch(args);
}
public void start(Stage primaryStage) {
int value=0;
Button button = new Button();
// just as an example i do know
我知道在c++中变量有块作用域,例如,下面的代码在C++中工作
void foo(){
int a = 0;
for(int i = 0; i < 10; ++i){
int a = 1; //re-define a here.
}
}
但是这个代码片段在java中不起作用,它报告“重复的局部变量a",这是否意味着java变量没有块作用域?
目前,我正在将一个脚本从Python 2转换为Python 3。在调试它时,我偶然发现了代码的一部分,它们在这两个版本之间的行为是不同的。然而,我无法解释这种差异。
这里是一个复制者:
variable_1 = "x"
variable_2 = "y"
list_of_variables = ['variable_1', 'variable_2']
existing_variables = vars()
print([variable for variable in list_of_variables if variable i
我播放一个声音文件,并在每次调用playSoundFile()方法时创建一个新线程。我只需要知道如何将来自方法调用的信息传递到线程内的run()中,以便在内部使用它。
public void playSoundFile(File file) {//http://java.ittoolbox.com/groups/technical-functional/java-l/sound-in-an-application-90681
new Thread(
new Runnable() {
要么是IntelliJ不够聪明,让我感到困惑,要么是因为我对Java中的变量范围(或者OOP的概念)缺少了一些东西。我有一段代码:
public class SomeClass {
private String foo = "something";
public void someMethod() {
new Thread(() -> {
String bar = foo; // How can foo be accessed from here?
someOtherMethod(); /
nextind在while循环中不起作用
它在julia>命令行中一步一步地执行,但在while循环中没有
mezclado = "AαBβ"
tamaño = sizeof(mezclado)
i = 1
while i ≤ tamaño
print(mezclado[i], " ")
i = nextind(mezclado, i)
end
I expect AαBβI obtain UndefVarError: I not
我正在尝试适应Spring JDBC,但让我头疼的是使用这些匿名类,我们不能传递任何局部变量,除非它们是最终变量,这可能很容易安排,但如果我需要循环数组或集合怎么办?我不能声明“execute fm”是最终的,因为它在循环中被重新初始化,但我需要调用FedModel方法100次。这是我遇到问题的具体场景,因为我不知道如何将BLOB插入到数据库中。
for (int i = 0; i < fedModels.size(); i++) {
FedModel fm = fedModels.get(i);
jdbcTemplate.execute("I
以下代码
def myfunc():
x = ""
print("Python is " + x)
def hi():
global x
x = "OMG"
hi()
print("Python is " + x)
myfunc()
只印两次"Python是“。我原以为第二个打印语句会打印"Python是OMG“。
有人知道如何做到这一点吗?我可以将x声明为全局变量,但我想避免它,因为我的编程任务的一个约束是只更改myfunc-函数中的代码。
可能重复:
在C#中,用本地作用域定义为if/ the /loop块的变量与在该块后面定义的变量冲突-请参阅代码片段。一个等价的代码在C/C++和Java下编译得很好。这在C#中是预期的行为吗?
public void f(){
if (true) {
/* local if scope */
int a = 1;
System.Console.WriteLine(a);
} else {
/* does not conflict with local from the same if/else */
int a = 2;
Sy
我正在循环遍历一个LinkedHashMap,并递增i计数器,下面是我过去使用for-循环的方式。
int i = 0;
for (Map.Entry<String, String> entry : linkedHashMap.entrySet()) {
Car car = new Car();
car.setCarId(String.valueOf(i++));
car.setCarName(entry.getKey());
car.setOdometerReading(entry.getValue());
app
我是一个完全的初学者,从youtube视频学习。我对这个小小的概念感到困惑。和的值在for循环的范围之外是'0‘。然后在for循环的范围内对其进行更改。为什么当我们在for循环之外打印它时,它还不是'0‘。我知道这是个愚蠢的问题。但据我所读,它不应该改变范围以外的for循环?我只是想学习。
#include<iostream>
using namespace std;
int main(){
int n =10 , sum=0;
for (int i = 0; i <= n; i++)
{
sum += i;
}
是否有可能(也是正确的)创建AlertDialog?我指的是一个AlertDialog,setPositiveButton给另一个AlertDialog打电话。
如果是的话,这两个AlertDialog可以有相同的名字吗?
示例:
final AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this);
builder
.setMessage("Do you want to register a new account?")
.setPositiveButt
Windows 7x64 Python2.7
我希望将线程解决方案应用到我的代码中。其他阅读资料
我浏览了图像、缩略图对的列表,并显示了缩略图,单击标签后,它应该会显示一个新的TopLevel,其中包含完整大小的图像。
实际发生的情况是,它只显示了ImagePairs的最后一个图像。四处寻找,我找到了我在上面发布的帖子,但我不确定如何准确地将其应用于我的情况。
row, col = 0, 0
#create a frame for the row
rowFrame = Frame(master)
f