zoukankan      html  css  js  c++  java
  • No.6 流程控制的陷阱

    1. switch语句

    • Only convertible int values, strings or enum variables ,即switch语句的表达式的类型只能是可以转换成int型的(向上转型,不丢失精度的),字符串类的和枚举类的

    2.if语句

    • 使用if...else语句:优先 把  包含范围小的条件放在前面处理
    • 对于if语句而言,如果紧跟该语句的是花括号括起来的语句块,那么该if语句将控制花括号括起来的语句块;如果省略了if语句后条件执行体的花括号,那它仅仅控制到紧跟该语句的第一个分号为止。

    3.尽量保留花括号,可以省掉很多不必要的  陷阱

    4. for循环的初始化条件可以同时定义多个变量,但是由于它只能接受一条语句(因为for后的括号中只能有两个“;”),因此,这两个变量的数据类型应该相同

    5. foreach循环

    • 遍历时将数组元素、集合元素的副本传给foreach循环的循环计数器——即循环计数器本身并不是数组元素、集合元素本身,只是一个中间变量,保存了元素的值,因此,通过循环计数器改变数组元素、集合元素是行不通的
      public class Test2 {
          public static void main(String[] args) {
          
              List<String> list = new ArrayList<>();
              list.add("aa");
              list.add("bb");
              list.add("cc");
              list.add("dd");
              
              for (String string : list) {
                  string  = "haha";
                  System.out.println(string);
              }
              
              System.out.println(list);
          }
      }

      输出:

      haha
      haha
      haha
      haha
      [aa, bb, cc, dd]

    PS:不足之处,欢迎指正、交流
  • 相关阅读:
    架构漫谈阅读笔记
    《七步掌握业务分析》读书笔记六
    《七步掌握业务分析》读书笔记五
    《七步掌握业务分析》读书笔记四
    使用JSON Web Token完成用户认证(REST framework JWT Auth)
    APIView与GenericAPIView
    支付宝支付
    视频托管和插入广告
    redis淘汰机制
    redis五种数据结构和应用场景
  • 原文地址:https://www.cnblogs.com/fang--/p/6270019.html
Copyright © 2011-2022 走看看