zoukankan      html  css  js  c++  java
  • 数据类型转换的一个题目

    自动数据类型转换

    低----------------------------->高
    byte,short,char,int,long,float,double
    高转低会进行强制类型转换会丢失精度

    package Test;
    public class Test {
        private static void test(int[] arr) {
            for (int i = 0; i < arr.length; i++) {
                try {
                    if (arr[i] % 2 == 0) {
                        throw new NullPointerException();
                    } else {
                        System.out.print(i);
                    }
                } finally {
                    System.out.print("e");
                }
            }
        }
     
        public static void main(String[]args) {
            try {
                test(new int[] {0, 1, 2, 3, 4, 5});
            } catch (Exception e) {
                System.out.print("E");
            }
        }
     
    }
    

    由于arr[0]=0,所以进入test()方法里面会在第一个if上抛出一个NullPointerException,接着会执行finally的语句,(finally语句先于return和throw语句执行,输出一个e,然后回到main方法中由于捕获到异常,所以进入到catch与剧中,然后打印一个’E’,所以最终结果为"eE"

  • 相关阅读:
    mysql 练习
    linux 常用软件安装-目录
    Python 三大神器
    Mysql 数据库安装配置
    Mysql数据库入门
    maven的安装与基本使用
    分布式事务
    分布式锁
    springcloud学习笔记
    springboot入门使用
  • 原文地址:https://www.cnblogs.com/narojay/p/10812634.html
Copyright © 2011-2022 走看看