A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张润泽 初级黑马   /  2019-2-21 16:20  /  778 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

异常一
创建
张润泽
问题标题
逻辑判断错误
问题补充
附件
String s1 = sc.next();
Set<Map.Entry<String, String>> entrySet = map.entrySet();
if (map.containsValue(s1)) {
System.out.println(s1 + "巴西获得世界杯的年份是:");
for (Map.Entry<String, String> stringEntry : entrySet) {
if (stringEntry.getValue().equals(s1)) {
System.out.println(stringEntry.getKey());
} else {
System.out.println(s1 + "没有获得过世界杯冠军");
[size=9.5000pt]}
问题答案
错题原因: 逻辑判断错误,思路没有分析对. else应该和if (map.containsValue(s1))是一对.如果没有这个元素就输出没有获得过世界杯冠军.
多个判断嵌套,掌握的不好,思路还是不清晰.
String s1 = sc.next();
Set<Map.Entry<String, String>> entrySet = map.entrySet();
if (map.containsValue(s1)) {
System.out.println(s1 + "巴西获得世界杯的年份是:");
for (Map.Entry<String, String> stringEntry : entrySet) {
if (stringEntry.getValue().equals(s1)) {
System.out.println(stringEntry.getKey());
[size=9.5000pt]}
[size=9.5000pt]}
} else {
System.out.println(s1 + "没有获得过世界杯冠军");
[size=9.5000pt]}



异常二
创建
张润泽
问题标题
运行错误
问题分类
要求删除所有的java
一级话题
问题补充
附件
ArrayList<String>  list = new ArrayList<>( );
list.add(“aaa”);
list.add(“java”);
list.add(“java”);
list.add(“javaja”);
list.add(“bbb”);
for(int i = 0;i < list.size();i++) {
If (“java”.equlas(list.get(i))) {
    List.remove(i);
}
}
问题答案
问题分析:
对集合的属性不熟悉,删除后索引会改变
解决方法:
for(int i = list.size() - 1;i >= 0 ;i--) {
If (list.get(i).contains(“java”)) {
    List.remove(i);
}
}



异常三
创建
张润泽
问题标题
逻辑性问题
问题分类
一级话题
问题补充
附件
<img src="../img/on.gif" id="light">

<script>
    var light = document.getElementById("light");
    var flag = true;
    light.onclick = function () {
        if (flag) {
            light.src = "../img/on.gif";
            flag = true;
        } else {
            light.src = "../img/off.gif";
            flag = false;
        }
    }

</script>
问题答案
if判断为ture的时候,图片应改为img.off.gif.状态更改为false
<img src="../img/on.gif" id="light">

<script>
    var light = document.getElementById("light");
    var flag = true;
    light.onclick = function () {
        if (flag) {
            light.src = "../img/off.gif";
            flag = false;
        } else {
            light.src = "../img/on.gif";
            flag = true;
        }
    }

</script>



异常四
创建
张润泽
问题标题
运行问题
问题分类
Equals==
一级话题
问题补充
附件
public class Test09 {
    public static void main(String[] args) throws IOException {
        Properties prop = new Properties();
        prop.load(new FileInputStream("score.txt"));
        Set<String> set = prop.stringPropertyNames();
        for (String key : set) {
            if (key =="lisi") {
                prop.setProperty(key,"100");
            }
        }
        prop.store(new FileOutputStream("score.txt")," ");
    }
}
问题答案
问题分析:
==比较的是地址值
问题解决方法:
public class Test09 {
    public static void main(String[] args) throws IOException {
        Properties prop = new Properties();
        prop.load(new FileInputStream("score.txt"));
        Set<String> set = prop.stringPropertyNames();
        for (String key : set) {
            if (key.equals("lisi")) {
                prop.setProperty(key,"100");
            }
        }
        prop.store(new FileOutputStream("score.txt")," ");
    }
}




异常五
创建
张润泽
问题标题
问题分类
一级话题
问题补充
附件
ArrayList<String> list = new ArrayList<>();
list.add("123");
list.add("12345");
list.add("654123");
list.add("456789123");
list.add("1112222333444");
list.add("555555");

Iterator<String> it = list.iterator();
while (it.hasNext()) {
    String s = it.next();
    if (s.length() < 5 || s.length() > 10) {
        list.remove(i);
    }
}
问题答案
问题分析:
迭代器不能使用集合的删除方法
问题解决方法:
ArrayList<String> list = new ArrayList<>();
list.add("123");
list.add("12345");
list.add("654123");
list.add("456789123");
list.add("1112222333444");
list.add("555555");

Iterator<String> it = list.iterator();
while (it.hasNext()) {
    String s = it.next();
    if (s.length() < 5 || s.length() > 10) {
        it.remove();
    }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马