缠丝猫 发表于 2024-5-13 21:30:21

Java 包装类:原始数据类型与迭代器

Java Iterator

Iterator 接口提供了一种迭代集合的方法,即顺序访问集合中的每个元素。它支持 hasNext() 和 next() 方法,用于检查是否存在下一个元素以及获取下一个元素。
获取 Iterator

可以使用集合的 iterator() 方法获取 Iterator 实例:
// 导入 ArrayList 类和 Iterator 类
import java.util.ArrayList;
import java.util.Iterator;

public class Main {
    public static void main(String[] args) {
      // 创建一个 ArrayList
      ArrayList<String> cars = new ArrayList<>();
      cars.add("Volvo");
      cars.add("BMW");
      cars.add("Ford");
      cars.add("Mazda");

      // 获取 Iterator
      Iterator<String> it = cars.iterator();
    }
}遍历集合

可以使用 hasNext() 和 next() 方法遍历集合:
while (it.hasNext()) {
    String car = it.next();
    System.out.println(car);
}删除元素

可以使用 Iterator 的 remove() 方法从集合中删除元素:
while (it.hasNext()) {
    String car = it.next();
    if (car.equals("Volvo")) {
      it.remove();
    }
}注意: 在使用 Iterator 删除元素时,不要使用集合的 for 循环或 for-each 循环,由于这会导致集合大小发生变化,并可能导致 Iterator 出现非常。
Iterator 是 Java 中用于遍历集合的强大工具。它提供了灵活的迭代方式,并支持元素的删除。
Iterator 的优势:

[*]灵活的迭代方式
[*]支持元素的删除
[*]可用于各种集合
Iterator 的劣势:

[*]使用时需要注意集合大小变化
[*]可能比 for 循环或 for-each 循环效率低
发起:

[*]当需要灵活的迭代方式或需要删除元素时,使用 Iterator。
[*]当只需要遍历集合并读取元素时,可以使用 for 循环或 for-each 循环。
Java 包装类

Java 包装类为原始数据类型(如 int、boolean 等)提供了对象表示形式。这使得将原始数据类型与需要对象的 API 一起使用成为可能。
原始类型与包装类

下表列出了 Java 中的原始类型及其对应的包装类:
原始类型包装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBooleancharCharacter使用包装类

创建包装对象
可以使用包装类的构造函数创建包装对象,并将原始值作为参数传递:
Integer myInt = new Integer(5);
Double myDouble = new Double(5.99);
Character myChar = new Character('A');获取值
可以使用包装类的 xxxValue() 方法获取其对应的原始值:
int intValue = myInt.intValue();
double doubleValue = myDouble.doubleValue();
char charValue = myChar.charValue();其他方法
包装类还提供了其他一些方法,比方:

[*]toString(): 将包装对象转换为字符串
[*]equals(): 比较两个包装对象是否相等
[*]hashCode(): 返回包装对象的哈希码
主动装箱和拆箱

从 Java 5 开始,主动装箱和拆箱答应将原始类型隐式转换为包装类,反之亦然。
比方:
// 自动装箱
int x = 10;
Integer y = x; // 隐式将 int 转换为 Integer

// 拆箱
Integer z = 20;
int w = z; // 隐式将 Integer 转换为 intJava 包装类提供了将原始数据类型用作对象的方法。它们在许多场景下都很有用,比方:

[*]将原始数据类型与需要对象的 API 一起使用
[*]将原始数据类型存储在集合中
[*]使用包装类提供的额外方法
发起:

[*]在需要将原始数据类型用作对象时使用包装类。
[*]了解主动装箱和拆箱机制,以便更好地使用包装类。
注意:

[*]虽然主动装箱和拆箱很方便,但它们可能会导致一些性能问题。
[*]在某些情况下,比方需要精确控制内存使用时,最好避免使用主动装箱和拆箱。
最后

为了方便其他设备宁静台的小同伴观看往期文章:
微信公众号搜索:Let us Coding,关注后即可获取最新文章推送
看完假如觉得有帮助,接待 点赞、收藏、关注

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Java 包装类:原始数据类型与迭代器