我想设置一个int old
为int new
的值,但是在第一个while
循环中int old
必须在 int new
之前定义,这意味着 int new
还不存在。所以int old
无法获取int new
的值。
如何提取此案例并在第一个循环中定义 int old = 0
(例如)。我找不到合适的函数,因为每个带有 int new 的 if 循环都会抛出异常,因为 int new 不存在。我该如何处理这个问题?
while(true) {
try {
int iold = inew;
int inew = input.read();
if (inew!=-1 && iold != -1) {
text = tf.getText();
tf.setText(text+(char)inew);
}
if (inew != -1 && iold = -1) {
text = tf.getText();
tf.setText(""+(char)inew);
}
Thread.sleep(100);
} catch(Exception x) {
x.printStackTrace();
}
repaint();
}
最佳答案
简单地做
int inew = 0; //Or any default value
while(true){
try{
int iold=inew;
inew=input.read();
if (inew!=-1 && iold!=-1)
{
text=tf.getText();
tf.setText(text+(char)inew);
}
if (inew!=-1 && iold=-1)
{
text=tf.getText();
tf.setText(""+(char)inew);
}
Thread.sleep(100);
}
catch(Exception x){
x.printStackTrace();
}
repaint();
}
关于Java:如果另一个 int 尚不存在则定义 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17530271/