Java基础笔记 – 增强的for循环For each循环 自动装箱拆箱 可变参数
2023-09-14 08:56:50 时间
public static void main(String[] args) { List String arrayList = new ArrayList String arrayList.add("a"); arrayList.add("b"); arrayList.add("c"); //普通的循环方式 for(int i=0; i arrayList.size(); i++){ System.out.println(arrayList.get(i)); //使用For each循环 for(String element : arrayList){ System.out.println(element); }
for(Iterator String iter = arrayList.iterator(); iter.hasNext();){ System.out.println(iter.next()); //使用For each循环 for(String element : arrayList){ System.out.println(element); }
因为增强的for循环会丢失下标信息,所以当遍历集合或数组时,如果需要方法集合或数组的下标,最好使用旧式的方式来实现循环或遍历。 2、自动装箱/拆箱(Autoboxing/unboxing): 自动装箱/拆箱打打方便类基本类型数据和它们包装类的使用。 自动装箱:把基本数据类型转换为包装类。 自动拆箱:把包转类型自动转换为基本数据类型。 2.1、自动装箱:
//自动装箱 Collection Integer c = new ArrayList Integer c.add(1); c.add(2); c.add(3);
if (integerCacheHighPropValue != null) { // Use Long.decode here to avoid invoking methods that // require Integers autoboxing cache to be initialized int i = Long.decode(integerCacheHighPropValue).intValue(); i = Math.max(i, 127); // Maximum array size is Integer.MAX_VALUE h = Math.min(i, Integer.MAX_VALUE - -low); high = h; cache = new Integer[(high - low) + 1]; int j = low; for(int k = 0; k cache.length; k++) cache[k] = new Integer(j++); private IntegerCache() {} } 其主要的功能就是把-128~127的整数缓存起来,当药使用这些数字时,就从这些缓存中获取。 由此可知下面代码运行的结果为true:
Integer m = 127; Integer n = 127; System.out.println(m == n);而下面的代码则为false:
Integer m = 128; Integer n = 128; System.out.println(m == n);
可变参数本质上是一个数组,声明了可变参数的方法,既可以传递离散的值,也可以传递一个数组对象。 可变参数必须作为方法参数的最后一个参数
。
JAVA基础复习之JDBC(配置动态数据源) 复习原因 在项目的开发当中,之前数据库连接信息都是写死在配置文件当中。但是突然接到一个需求: 获取外部数据源信息,然后将某些数据通过Echarts绘制成折线图展示出来(ps:数据源需要用户手动设定) 有点懵,因为之前都是写死在配置文件当中的,然后在网上也找了一些资料,发现都不是自己想要的。 最后想到,既然是简单的获取数据进行展示,直接使用JDBC连接数据库获取就可以了啊。没有必要搞什么骚操作。 一直使用的JPA或者mybatis进行数据库连接,很少使用JDBC进行数据库连接。 因此也复习一下JDBC,毕竟无论是JPA还是Mybatis都是对JDBC的一个封装。 什么是JD
【Java 基础】Java 数据类型和 MySql 数据类型对应表 【Java 基础】Java 数据类型和 MySql 数据类型对应表MySQL 数据类型对应 Java 数据类型 类型名称 显示长度 数据库类型 JAVA 类型 JDBC 类型索引 (int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR java.lang.String 1 BLOB L+N BLOB java.lang.byte[] -4 TEXT 65535 VARCHAR java.lang.String -1 INTEGER 4 INTEGER UNSIGNED java.lang.Long 4 TINYINT
Java的学习笔记(02)基础 访问修改函数 static:它用于使成员(块、方法、变量或嵌套类)可以独立于任何其他成员使用,而无需参考特定情况。 strictfp:用于限制、浮点、浮点运算和计算,并在浮点变量中执行任务时保证每个阶段的结果相同。 synchronized:它用于在Java中获得适用于块和方法的同步。 transient:作为序列化的一部分使用的因子修饰符。在序列化的季节,如果我们不想对记录中的特定变量进行多余的估计,那么此时,我们使用transient关键字。 volatile:如果修饰符告诉编译器,由不稳定变量调整的变量通过程序的不同部分发生惊人的变化,则使用volatile。 Java关键字的
Java面试题1:Java基础篇 面向对象是一种万物皆对象的编程思想,任何物体都可以归为一类事物,而一个个个体都是一类事物的实例。面向对象的编程是以对象为中心,以消息为驱动的。
相关文章
- [Java基础] java多线程关于消费者和生产者
- java克隆机制
- JAVA学习(五):Java面向对象编程基础
- JAVA学习(一):Java介绍及其平台、开发环境的配置与搭建
- Java实现 LeetCode 105 从前序与中序遍历序列构造二叉树
- java实现基因牛的繁殖
- java实现巧排扑克牌
- java实现第六届蓝桥杯三角形面积
- Java实现有理数的循环节
- (Java实现) 蓝桥杯 国赛 重复模式
- linux:ubuntu21.04安装java se 16(jdk 16.0.2)
- Java zip解压及读取
- 【JAVA】增强for循环for(int a : arr)
- 【Java】java使用反射访问对象方法和成员变量
- 使用Java标准的java.util.EventListener实现观察者-发布者设计模式
- Atitit 搜索蓝牙设备 powershell的实现 java noede.js python 先用脚本语言python nodejs,不好实现。。Java 也不好实现。。 Netcore可以,
- Atitit java播放器调音速率快慢的实现 目录 1.1. 原理 本质上是改变采样率即可1 2. 使用Java增加/降低AudioInputStream的音频播放速度(Increase/dec
- 当年的Java考试:JAVA&移动应用&大数据-大三-社区疫苗接种管理系统(全部源码·保姆式呵护)
- 【java】Java 枚举(enum)如何使用以及原理
- Java 关于java.util.LinkedHashMap cannot be cast to 实体类问题答案
- 基于JAVA实现的WEB端UI自动化 - WebDriver高级篇 - 代码检查点[验证点/断言]与图像检查点
- Java 8 中的 java.util.Map#computeIfAbsent
- Java基础(13)-流程控制之循环结构
- 【java基础】循环语句、中断控制语句