为什么要使用 Uri.Builder 而不仅仅是 string 和 concatente 参数呢?

use*_*870 7 java string uri

我只是想知道为什么建议使用 aUri.Builder而不是只使用字符串并将参数连接到它?

有人可以用一些简短的例子解释一下吗?

是因为效率吗(因为字符串是不可变的......等(但我们可以使用Stringbuilderor StringBuffer))

或者字符串涉及任何安全问题?

Tun*_*aki 6

URI当您从远处看时,An非常复杂:有一个方案、一个权限、一条路径、查询……此外,您必须记住如何正确编码您的数据。所有这些都非常繁琐,而且是一项重复性的任务。

UriBuilder旨在让您远离这一切。它将正确编码您的参数,URI并使用简单的语法正确构建您的参数:

UriBuilder.fromUri("http://localhost/").path("{a}").queryParam("name", "{value}").build("segment", "value");
Run Code Online (Sandbox Code Playgroud)

将构建以下 URI:http://localhost/segment?name=value. {a}path 将被的第一个参数替换build{value}并将被第二个参数替换。