我需要从 Android 中的 list 解析包版本。我是直接在main Activity中做的,不知道是不是错了。
我现在无法测试这是否有效,由于各种原因,尽管我正在运行 Eclipse,但几天后我就无法测试它,但这确实伤害了我的心,因为我是一个相当担心的人:
{ try {
String version = getPackageManager().getPackageInfo(getPackageName(), 0).versionName;
} catch (NameNotFoundException e) {
Log.e("tag", e.getMessage());
} }
您注意到整个语句前后的大括号了吗?如果我删除它们,Eclipse 会说
“标记“{”上存在语法错误,{ 在此标记后应预期”
在前面的 Activity 开头,以及其后的任何方法或语句中的类似内容。
我用谷歌搜索它,因为这是我能做的,但没有发现任何需要它们的信息。 Java 教程、示例拼写 try catch 没有这个。我是否做了一些非常愚蠢的事情,或者这是正常行为,我的代码应该在我回来时运行?
再次对这个问题感到抱歉,但我只是需要。
提前致谢。
最佳答案
您可能在任何方法之外都有该代码。通过大括号,Java 将其视为实例初始化 block 。没有大括号,这是非法的。
该代码的另一个问题是,您初始化了变量 version
,然后立即丢失了信息,因为 version
是 try
的本地变量。堵塞。该变量可能应该在 block 之外声明。
关于java - java 中的整个 try/catch 语句需要大括号吗?真的很奇怪的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12590276/