浅析java 10中的var关键字用法

作者:飞宸 时间:2021-12-23 15:18:17 

2018年3月20日,Oracle发布java10。java10为java带来了很多新特性,其中让人眼前一亮的便是var关键字的引入。

what

•java10引入了局部变量折断 var用于声明局部变量。

如var user=new ArrayList<User>();

why

•避免了信息冗余
•对齐了变量名
•更容易阅读

how

•java10之前的变量声明:


URL codefx = new URL("http://codefx.org")
URLConnection connection = codefx.openConnection();
Reader reader = new BufferedReader(
new InputStreamReader(connection.getInputStream()));

•java10


var codefx = new URL("http://codefx.org");
var connection = codefx.openConnection();
var reader = new BufferedReader(
new InputStreamReader(connection.getInputStream()));

•在处理 var时,编译器先是查看表达式右边部分,也就是所谓的构造器,并将它作为变量的类型,然后将该类型写入字节码当中。

attention

•只能用于带有构造器的局部变量,以下场景不适用 


var foo; foo = "Foo";
var ints = {0, 1, 2};
var appendSpace = a -> a + " ";
private var getFoo(){}

•除了局部变量,for循环是唯一可以使用 var的地方:


var numbers = List.of("a", "b", "c");
for (var nr : numbers)
System.out.print(nr + " ");
for (var i = 0; i < numbers.size(); i++)
System.out.print(numbers.get(i) + " ");

总结

以上所述是小编给大家介绍的java 10中的var关键字用法网站的支持!

来源:https://www.cnblogs.com/feichen-2018/p/8650216.html

标签:java,var
0
投稿

猜你喜欢

  • springboot如何开启一个监听线程执行任务

    2022-01-09 08:44:48
  • java线程间通信的通俗解释及代码示例

    2023-12-06 18:04:43
  • Java如果通过jdbc操作连接oracle数据库

    2023-04-07 10:55:51
  • Java 手写LRU缓存淘汰算法

    2023-03-03 00:11:19
  • 详解Java虚拟机管理的内存运行时数据区域

    2023-12-04 01:32:35
  • Java8 HashMap键与Comparable接口小结

    2023-11-29 10:10:31
  • springboot异常处理的基本规范

    2023-11-23 15:48:19
  • 面试官:详细谈谈Java对象的4种引用方式

    2022-09-19 04:52:20
  • 2020JDK1.8安装教程详解(一次就可安装成功)

    2023-11-28 04:08:58
  • 详解Spring Boot自动装配的方法步骤

    2023-11-18 15:02:18
  • 一文带你学会Java事件机制

    2022-07-22 05:05:11
  • IO中flush()函数的使用代码示例

    2023-11-27 03:49:00
  • Java函数式编程(十二):监控文件修改

    2022-08-11 10:21:01
  • Java RPC框架熔断降级机制原理解析

    2023-06-07 06:01:48
  • java 使用POI合并两个word文档

    2022-09-30 12:22:54
  • hadoop运行java程序(jar包)并运行时动态指定参数

    2023-07-27 11:02:10
  • JAVA实现的CrazyArcade泡泡堂游戏

    2022-12-25 11:55:23
  • Java Spring处理循环依赖详解

    2022-07-14 05:06:16
  • Spring Boot Logback配置日志过程解析

    2022-12-09 18:08:06
  • SpringBoot线程池和Java线程池的使用和实现原理解析

    2022-06-27 07:22:30
  • asp之家 软件编程 m.aspxhome.com