当前位置: 首页 > 知识库问答 >
问题:

Java8已经引入了IntStream、LongStream和DoubleStream,为什么没有添加CharStream和StringStream?[副本]

许彭祖
2023-03-14

为什么Java8没有StringStream和CharStream。

StringStream.of("String1","String2");

StringStream.concat(stream1,stream2);

StringStream.builder().add("String1").add("string2").accept("string3");

共有1个答案

阎经武
2023-03-14

没有char流,原因与没有byte流相同。所有那些特定的流添加优化(没有装箱/取消装箱)。charbyte在内部表示为int,因此添加它们没有好处。

他们当然应该为了方便而添加它们,但他们没有。

没有字符串流,因为没有原因。String是引用类型,所以普通流可以很好地使用它。

 类似资料:
  • 我有一个通过Interface Builder定义的布局约束视图。由于它们无法暂时停用,我决定通过拨打以下电话有选择地删除它们: 但是,之后约束仍然驻留在视图中。约束。此外,我还希望以编程方式添加约束(同样,因为我无法(取消)激活它们): 对我的方法的任何调用都会导致变量wasAdded的值NO。这也反映在用户界面上,它根本没有改变。 最后,我既不能以编程方式添加约束,也不能删除添加到情节提要的约

  • 我试图理解object.clone()在Java中是如何工作的。我偶然发现了以下事实: null 疑点: 为什么Java设计者会做出这样的设计选择并这样实现它?为什么不在本身中定义,如果实现类不为提供实现,那么将产生编译时错误。 Q2.为什么要在运行时检查实例是否实现? 附:我知道在一个问题中问多个问题是一个坏主意。但这些都是密切相关的问题。我可以问一个问题,比如“为什么不包含?”但是,我觉得,为

  • null 现在我是否感到困惑:如果我想访问中的第一个字符并将其存储在eax寄存器中,我希望汇编程序执行如下操作: 如果我需要访问存储在ARGV[1]中的第二个字符并将其存储在eax寄存器中,我希望汇编程序执行如下操作: 但相反,我看到编译器执行以下操作: null

  • 如何在Java中获得纳秒级精度?我正在Ubuntu 14.04 64位上运行Oracle Java 1.8.0_66

  • 这是我的路线文件。。。 “ProfileController”是这样的。。。 这是视图文件... 布局文件的头是这个。。。 当我转到url“localhost:8000/profile/username”时,会显示一个没有任何css网页的丑陋html。。。。当我从路由文件中删除“/{username}”并使其成为“/profile/username”并转到“localhost:8000/profi