我正在尝试做一个基本的计数器,所以每次点击都会增加一个计数器.我可以让计数器工作,但是当我按住手指/点击时,它也会疯狂地增加计数.
码:
public void render() {
boolean isTouched = Gdx.input.isTouched();
if (isTouched) {
System.out.println(Cash);
Cash++;
}
}
Run Code Online (Sandbox Code Playgroud)
此外,虽然我在这里,你如何打印一个integer/float会改变每个水龙头?
喜欢: font.draw(batch, Cash, 300, 260);
直接不起作用.
我已经创建了一个Android应用程序,并将其导出为*.apk.是否可以apk在成功安装后自动删除文件?
我正在研发的产品(25年的产品)非常庞大和复杂.那么让我在简单的场景中解释我想要的东西:
我宣布了一个int变量.说,int var = 0001;
当我们试图检索它的价值时var,我们会得到1.
现在,我的要求是,是否可以返回0001,而无需更改方法的签名或返回类型?
我一直在使用int在for-loop.如下所示:
for (int i = 0; i < 100 ; i++) {
//Do something...
}
Run Code Online (Sandbox Code Playgroud)
如果我使用Integer而不是int像下面那样,它会有什么不同吗?
for (Integer i = 0; i < 100 ; i++) {
//Do something...
}
Run Code Online (Sandbox Code Playgroud) 当我创建一个类似的File对象时
File f = new File("c:")
Run Code Online (Sandbox Code Playgroud)
然后调用该方法isDirectory(),它返回true.这是为什么?
该程序假设显示该目录中的所有文件并且正常工作,除非我使用"c:".它不是访问"c:\",而是访问主路径,而是访问程序正在执行的目录.我真的不明白.
不确定是否必须在另一个Stack Exchange站点中询问此问题,如果是,请相应地进行迁移!
我有三种不同类型的服务器连接.这些可以在属性文件中配置.
假设有三台服务器:
Server1
Server2
Server3
Run Code Online (Sandbox Code Playgroud)
在Properties文件中,我配置如下:
ServerPref1 = Server1
ServerPref2 = Server2
ServerPref3 = Server3
Run Code Online (Sandbox Code Playgroud)
在代码级别,我的后退机制如下:
private static void getServerAndConnect() {
try {
connect(Properties.ServerPref1);
} catch (ServerException se1) {
try {
connect(Properties.ServerPref2);
} catch (ServerException se2) {
try {
connect(Properties.ServerPref3);
} catch (ServerException se3) {
// Unable to connect
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果无法连接到服务器,该connect()方法将抛出自定义ServerException.
一切都按预期工作.
我的问题是:这是实现回退机制的正确或最佳方式吗?
执行以下代码时:
public class FPoint {
public static void main(String[] args) {
float f = 0.1f;
for(int i = 0; i<9; i++) {
f += 0.1f;
}
System.out.println(f);
}
}
Run Code Online (Sandbox Code Playgroud)
将显示以下输出:
1.0000001
但输出应该是1.0000000,对吗?如我错了请纠正我..!!
在Java中使用集合时,建议使用Interface而不是具体类型.
喜欢: List<Object> list = new ArrayList<Object>();
但是,使用ArrayList<Object> list = new ArrayList<Object>();也会做同样的工作,对吧?
public String getTypeOfDayWithSwitchStatement(int dayOfWeekArg) {
String typeOfDay;
switch (dayOfWeekArg) {
case "Monday":
typeOfDay = "Start of work week";
break;
case "Tuesday":
case "Wednesday":
case "Thursday":
typeOfDay = "Midweek";
break;
case "Friday":
typeOfDay = "End of work week";
break;
case "Saturday":
case "Sunday":
typeOfDay = "Weekend";
break;
default:
throw new IllegalArgumentException("Invalid day of the week: " + dayOfWeekArg);
}
return typeOfDay;
}
Run Code Online (Sandbox Code Playgroud)
注释以下行,抛出编译错误:
throw new IllegalArgumentException("Invalid day of the week: " + dayOfWeekArg);
Run Code Online (Sandbox Code Playgroud)
也typeOfDay被视为未初始化的变量.
但为什么它之前不被视为未初始化的变量.
我有以下代码:
public class Operators {
public static void main(String[] args) {
int i =+ 2;
System.out.println(i);
}
}
Run Code Online (Sandbox Code Playgroud)
执行后,我得到以下输出:2
那么=+运营商在这里做了什么呢?
编辑:
正如一些回答,这是分配+2到i,考虑下面的代码:
public class Operators {
public static void main(String[] args) {
int i =- -2;
System.out.println(i);
}
}
Run Code Online (Sandbox Code Playgroud)
所以在上面的例子中,输出应该是-2.但我得到了2
所以我想,它是-(-2),它给出了2.对吗?
我有以下SOP:
System.out.println(9 - ((9 / 2) * 2));
Run Code Online (Sandbox Code Playgroud)
从我在学校学到的数学,它应该评估0.
但我得到的输出是1...... !!!
我已经尝试在输出中评估Google中的相同表达式0.
根据数学,Java评估为1,它被评估为0.任何解释?