import java.util.*;
import java.io.*;
class ScannerTest
{
public void readKeyboard()
{
System.out.print("输入信息:");
try
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
}catch(Exception e)
{
e.printStackTrace();
}
System.out.println(str);
sc.close();
}
}
public class ScannerFileTest
{
public static void main(String[] args)
{
new ScannerTest().readKeyboard();
}
}
麻烦看一下上面代码有什么问题吗
import java.io.*;
class ScannerTest
{
public void readKeyboard()
{
System.out.print("输入信息:");
try
{
Scanner sc=new Scanner(System.in);
String str=sc.next();
}catch(Exception e)
{
e.printStackTrace();
}
System.out.println(str);
sc.close();
}
}
public class ScannerFileTest
{
public static void main(String[] args)
{
new ScannerTest().readKeyboard();
}
}
麻烦看一下上面代码有什么问题吗
public void readKeyboard() {
System.out.print("输入信息:");
// 临时变量的作用域在每一对"{}"之间的
Scanner sc = null; // 变量外提
String str = null;
try {
// Scanner sc = new Scanner(System.in);
// String str = sc.next();
sc = new Scanner(System.in);
str = sc.next();
} catch (Exception e) {
e.printStackTrace();
}
// 因为你定义在try中的变量,在这里无法访问
System.out.println(str);
sc.close();
}
}