Skip to content

Instantly share code, notes, and snippets.

void main() {
const i = 12;
print('fibonacci($i) = ${fibonacci(i)}');
}
/// Computes the nth Fibonacci number.
int fibonacci(int n) {
return n < 2 ? n : (fibonacci(n - 1) + fibonacci(n - 2));
}
@LeoAndo
LeoAndo / FibonacciJava.java
Created July 15, 2025 15:22
フィボナッチ数の計算(Java)
public class Main {
public static void main(String[] args) {
var i = 12;
System.out.println("fibonacci(" + i + ") = " + fibonacci(i));
}
/**
* n番目のフィボナッチ数を計算する
*
* @param n 数列の項番
@LeoAndo
LeoAndo / BubbleSort.java
Last active January 9, 2025 10:12
バブルソートアルゴリズムの総比較回数の計算サンプル (Java)
public class BubbleSort {
public static void main(String[] args) {
int[] scores = {90, 70, 50, 80, 100, 200, 300};
// 最適化していないバブルソーティングアルゴリズムを使った総比較回数の計算を行う。計算式は、(n-1)(n-1+1)/2
int n = scores.length;
int totalComparisons = (n - 1) * (n - 1 + 1) / 2;
System.out.println("総比較回数: " + totalComparisons); // 総比較回数: 21
}
}
@LeoAndo
LeoAndo / Utils.java
Created December 10, 2024 09:57
Javaのスレッドセーフ(雑記)
import java.util.concurrent.ThreadLocalRandom;
public class Utils {
/**
* 1から9までのランダムな整数を生成して返します。(スレッドセーフな乱数生成)
*
* @return 1から9までのランダムな整数
*/
private int getRandomInt() {
@LeoAndo
LeoAndo / Student.java
Created June 5, 2024 22:08
[Java] クラスフィールドとインスタンスフィールドの実験
// クラスフィールドとインスタンスフィールドの実験目的なため、コンストラクタやアクセサメソッドなどは用意しない.
public class Student {
// クラスフィールド
private static String schoolName;
// インスタンスフィールド
private String name;
private int age;
public static void main(String[] args) {
System.out.println("==========Tanaka===========");
@LeoAndo
LeoAndo / VolatileSample.java
Last active June 5, 2024 22:09
フィールドの修飾子volatileのサンプル
public class VolatileSample {
private static volatile int count = 0; // メインメモリの変数に対して読み書きする
// private static int count = 0; // 各スレッドの対応するキャッシュした変数に対して読み書きする
public static void main(String[] args) {
new MultiThread1().start();
new MultiThread2().start();
}
// Thread-0
@LeoAndo
LeoAndo / TransientSample01.java
Last active March 24, 2025 09:31
フィールドの修飾子transientのサンプル
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
class TransientSample01 {
public static void main(String[] args) {
var person = new Person("Tanaka", 20, "Tokyo", "09012345678");
@LeoAndo
LeoAndo / Main.java
Created May 22, 2024 23:33
メソッド引数についてのサンプル1
public class Main {
public static class Person {
public int age;
}
public static void main(String[] args) {
System.out.println("参照型 配列の実験-START");
int[] arrayInt = {10, 20, 30}; // インスタンス生成
foo(arrayInt);
System.out.println(arrayInt[0]);
@LeoAndo
LeoAndo / MainActivity.java
Last active October 6, 2024 15:03
[Android] Spinnerのテキスト色を変える
package xxx; // TODO 自分のパッケージ名に変更する
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
public class MainActivity extends AppCompatActivity {
@LeoAndo
LeoAndo / SpringImageView.java
Created October 11, 2023 09:33
[Android] Springアニメーション用のImageView
package xxxx; // TODO パッケージ名は自分の環境に合わせてください
import android.annotation.SuppressLint;
import android.content.Context;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewTreeObserver;