>>109014659
>>109014672
I decided to ask ChatGPT for fun to write me the same code in C# and Java, and this is the result:
C#:
Task<List<User>> task1 = GetUsersFromSource1Async();
Task<List<User>> task2 = GetUsersFromSource2Async();
List<User>[] results = await Task.WhenAll(task1, task2);
List<User> filteredUsers = results
.SelectMany(users => users)
.Where(user => user.Name.StartsWith("anon", StringComparison.OrdinalIgnoreCase)
.OrderBy(user => user.Age)
.ToList();
foreach (User user in filteredUsers)
{
Console.WriteLine($"{user.Name} - {user.Age}");
}
Java:
ExecutorService executor = Executors.newFixedThreadPool(2);
CompletableFuture<List<User>> task1 =
CompletableFuture.supplyAsync(Main::getUsersFromSource1, executor);
CompletableFuture<List<User>> task2 =
CompletableFuture.supplyAsync(Main::getUsersFromSource2, executor);
CompletableFuture.allOf(task1, task2).join();
List<User> filteredUsers = Stream
.concat(task1.join().stream(), task2.join().stream())
.filter(user -> user.name()
.toLowerCase(Locale.ROOT)
.startsWith("anon"))
.sorted(Comparator.comparingInt(User::age))
.toList();
filteredUsers.forEach(user ->
System.out.println(user.name() + " - " + user.age())
);
executor.shutdown();
Java code looks like SHIT lmfao