首页 > 编程语言 >秦疆的Java课程:24 基础 数据类型扩展及面试题讲解

秦疆的Java课程:24 基础 数据类型扩展及面试题讲解

时间:2023-11-10 15:33:24浏览次数:43  
标签:24 面试题 String 数据类型 System println main public out

1、整数扩展 进制

  • 二进制数:0b开头
    八进制数:0开头
    十六进制数:0x开头
public class DEMO1 {  
    public static void main(String[] args) {  
        //整数扩展:进制   
        int A = 10;  
        int B = 0b10;//二进制  
        int C = 010;//八进制  
        int D = 0x10;//十六进制  
  
        System.out.println(A);  
        System.out.println(B);  
        System.out.println(C);  
        System.out.println(D);  
    }  
}

跑出来的结果是:
10
2
8
16

2、浮点数扩展

public class DEMO2 {  
    public static void main(String[] args) {  
        //浮点数扩展:  
        float E = 0.1f;  
        double F = 1.0/10;  
  
        System.out.println(E==F);//判断E和F是否相等  
        System.out.println(E);  
        System.out.println(F);  
    }  
}

结果是:
false
0.1
0.1
看起来相等,但是实际上不相等。

public class DEMO3 {  
    public static void main(String[] args) {  
        //浮点数扩展:  
        float G = 114514114514114514F;  
        float H = G + 1;  
  
        System.out.println(G==H);  
    }  
}

输出的结果是true

  • 浮点数:有限、离散,有舍入误差,接近但不等于。
  • 最好完全避免使用浮点数进行比较!!!
  • 银行业务使用数学工具类:BigDecimal

3、字符扩展 Unicode

public class DEMO4 {  
    public static void main(String[] args) {  
        //字符扩展  
        char I = 'Z';  
        char J = '中';  
  
        System.out.println(I);  
        System.out.println((int)I);//强制转换为数字  
        System.out.println(J);  
        System.out.println((int)J);  
    }  
}

结果为:
Z
90

20013

  • 所有的字符本质还是数字
  • Unicode编码可以处理各种语言文字,从U0000-UFFFF,是十六进制。
public class DEMO5 {  
    public static void main(String[] args) {  
        //字符扩展
        char K = '\u4e2d';  //Unicode编码
  
        System.out.println(K);  
    }  
}

输出结果为:
前面“中”对应的十进制数是“20013”,转换为十六进制为“4e2d”

4、字符拓展 转义字符

public class DEMO6 {  
    public static void main(String[] args) {  
        //字符拓展 转义字符举例
        //制表符 \t
        //换行 \n
        System.out.println("Hello\tWorld");  
        System.out.println("Hello\nWorld");  
    }  
}

输出结果为:
Hello World
Hello
World
(这里\t的显示效果和IDEA里不一样,IDEA里会有横线,可能是显示设置的问题。)

  • 转义字符有很多,可以自行查找试用。

5、内存地址

public class DEMO7 {  
    public static void main(String[] args) {  
        //内存地址不同
        String L = new String ("hello world");  
        String M = new String ("hello world");  
        System.out.println(L==M);  
        //内存地址相同
        String N = "hello world";  
        String O = "hello world";  
        System.out.println(N==O);  
    }  
}

输出结果:
false
true
(IDEA里输入上述代码,"new String ("hello world")中间会自动出现original:字样。不要手动输入original:,会报错的。)

  • new开辟了新的内存空间,也就是L和M的内存地址是不同的,而不使用new的N和O指向的是同一个地址。

6、布尔值扩展

public class DEMO8 {  
    public static void main(String[] args) {  
        //布尔值扩展  
        boolean flag = true;  
        if (flag==true){}//新手  
        if (true){}//老手  
    }  
}

这个代码没有跑,只是想说明if (flag==true){}if (true){}完全相同。

  • 代码要精简易读。

标签:24,面试题,String,数据类型,System,println,main,public,out
From: https://www.cnblogs.com/Acolyte/p/17824237.html

相关文章

  • 面试必刷TOP101:24、二叉树的中序遍历
    题目题解深度优先搜索-递归publicclassSolution{/***代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可***@paramrootTreeNode类*@returnint整型一维数组*/publicint[]inorderTraversal(TreeNo......
  • 力扣2406. 将区间分为最少组数
    给你一个二维整数数组 intervals ,其中 intervals[i]=[lefti,righti] 表示 闭 区间 [lefti,righti] 。你需要将 intervals 划分为一个或者多个区间 组 ,每个区间 只 属于一个组,且同一个组中任意两个区间 不相交 。请你返回 最少 需要划分成多少个组。如果......
  • Android并发编程高级面试题汇总(含详细解析 十二)
    Android并发编程高级面试题汇总最全最细面试题讲解持续更新中......
  • Android并发编程高级面试题汇总(含详细解析 十五)
    Android并发编程高级面试题汇总最全最细面试题讲解持续更新中......
  • Spring 6.0官方文档示例(24): replace-method的用法
    一、原始bean定义packagecn.edu.tju.study.service.anno.domain;publicclassMyValueCalculator{publicStringcomputeValue(Stringinput){return"youinputted:"+input;}//someothermethods...}二、replacebean定义packagecn.edu.......
  • 每天5道Java面试题(第7天)
    1. Files的常用方法都有哪些?Files.exists():检测文件路径是否存在。Files.createFile():创建文件。Files.createDirectory():创建文件夹。Files.delete():删除一个文件或目录。Files.copy():复制文件。Files.move():移动文件。Files.size():查看文件个数。Files.read():读取文件。......
  • redis数据类型
    ·Redis常见数据类型string可存储三种类型值:字符串整数浮点数string是最基本的类型,value可以是数字、字符串或者二进制数据。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象。常用于缓存、计数、共享session,分布式锁进......
  • 并发面试题
    并发面试题线程池线程池核心参数corePoolSize:核心线程池个数,通常情况下最多添加corePoolSize个Worker,当任务过多时(阻塞队列满了),会继续添加Worker直到Worker数达到maximumPoolSizeworkQueue:用于保存等待执行的任务的阻塞队列。比如基于数组的有界ArrayBlockQueue、基于链表的......
  • Android并发编程高级面试题汇总(含详细解析 十四)
    Android并发编程高级面试题汇总最全最细面试题讲解持续更新中......
  • 2023金九银十Android程序员面试题参考指南!
    前言还有不到一个礼拜就是金九银十招聘高峰期了,在这里分享一份《Android面试题汇总》这些面试题都是互联网大厂真实流出的面试内容,每个问题都附带完整详细的答案,不像网上的那些资料三教九流有的甚至还没答案,这些面试题都是我也是整理出来的精品资料。希望能给那些有需要朋友在求职......