Cuplikan KivaKit #11
Jan 04 2023
Lebih lanjut tentang KivaKit https://state-of-the-art.org/https://www.
package com.telenav.kivakit.snippets;
import com.telenav.kivakit.core.language.trait.TryTrait;
import com.telenav.kivakit.core.messaging.listeners.MessageList;
import static com.telenav.kivakit.core.collections.list.StringList.stringList;
public class Snippet11 extends BaseSnippet implements TryTrait
{
public static void main(String[] args)
{
new Snippet11().run();
}
@Override
protected Object onSnippet()
{
var issues = new MessageList();
var results = stringList();
issues.listenTo(this);
// 1, 2
results.add("x = " + tryCatch(this::x));
results.add("y = " + tryCatch(this::y));
// 3, 4
results.add("x = " + tryCatchDefault(this::x, -1));
results.add("y = " + tryCatchDefault(this::y, -1));
// 5, 6
results.add("x = " + tryCatch(this::x, "Failed to x()"));
results.add("y = " + tryCatch(this::y, "Failed to y()"));
// 7
results.addAll(issues.formatted());
issues.clear();
// 8
results.add("x = " + tryCatchThrow(this::x, "Failed to x(): rethrowing"));
try
{
results.add("y = " + tryCatchThrow(this::y, "Failed to y(): rethrowing"));
}
catch (Exception e)
{
// 9
results.add("Caught rethrown exception");
}
// 10
results.addAll(issues.formatted());
issues.clear();
return results.numbered().titledBox("Results");
}
private int x()
{
return 3;
}
private int y()
{
throw new IllegalStateException("Error in y()");
}
}
Output
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫ Results ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┋ 1. x = 3 ┋
┋ 2. y = null ┋
┋ 3. x = 3 ┋
┋ 4. y = -1 ┋
┋ 5. x = 3 ┋
┋ 6. y = null ┋
┋ 7. Failed to y(): Error in y() ┋
┋ Exception in thread "main"java.lang.IllegalStateException: Error in y() ┋
┋ at com.telenav.kivakit.snippets.Snippet11.y(Snippet11.java:66) ┋
┋ at com.telenav.kivakit.core.language.trait.TryTrait.tryCatch(TryTrait.java:67) ┋
┋ at com.telenav.kivakit.snippets.Snippet11.onSnippet(Snippet11.java:33) ┋
┋ at com.telenav.kivakit.snippets.BaseSnippet.run(BaseSnippet.java:10) ┋
┋ at com.telenav.kivakit.snippets.Snippet11.main(Snippet11.java:12) ┋
┋ 8. x = 3 ┋
┋ 9. Caught rethrown exception ┋
┋ 10. Failed to y(): rethrowing: Error in y() ┋
┋ Exception in thread "main"java.lang.IllegalStateException: Error in y() ┋
┋ at com.telenav.kivakit.snippets.Snippet11.y(Snippet11.java:66) ┋
┋ at com.telenav.kivakit.core.language.trait.TryTrait.tryCatchThrow(TryTrait.java:11 ┋
┋ 2) ┋
┋ at com.telenav.kivakit.snippets.Snippet11.onSnippet(Snippet11.java:44) ┋
┋ at com.telenav.kivakit.snippets.BaseSnippet.run(BaseSnippet.java:10) ┋
┋ at com.telenav.kivakit.snippets.Snippet11.main(Snippet11.java:12) ┋
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
Lebih lanjut tentang KivaKit
https://state-of-the-art.org/
https://www.kivakit.org/
Artikel Terkait
Cuplikan KivaKit #1
Cuplikan KivaKit #2
Cuplikan KivaKit #3
Enam Alasan Mengapa Sebagian Besar Java yang Anda Lihat Bukan Java Asli
Mengapa Host Bukan String dan Port Bukan Integer
Integer Bukan Hitungan
Semuanya Membagi dan Menaklukkan
Taylor Sheridan Baru Menambahkan 1 Bintang 'Yellowstone' Favoritnya ke Pemeran 'Lawmen: Bass Reeves'

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































