型の安全性: Object から ~ への未検査キャスト
Java
JavaでInteger同士の大小比較 <>を使用してはいけない
JavaでInteger同士の大小比較 <>を使用してはいけない 項目 内容 言語 Java バージョン openjdk 17.0.4.1 2022-08-12 LTS Integer同士の比較はcompareTo()メソッドで行います。 ...
WSL2(Ubuntu22.04)にAmazon Corretto17をインストールする
WSL2(Ubuntu22.04)にAmazon Corretto17をインストールする インストール WSL2(Ubuntu22.04)にAmazon corretto17をインストールします。 $ sudo apt update $ w...
JavaでCompletableFuture.supplyAsync()メソッドを使用して非同期処理を行う
JavaでCompletableFuture.supplyAsync()メソッドを使用して非同期処理を行う CompletableFuture.supplyAsync()メソッドは、引数として渡された処理(ラムダ式やメソッド参照など)を非同...
instanceof – 【Java16】
instanceof - 【Java16】 Java14でプレビューとして追加されたテキストブロックがJava16で正式に追加されました。 従来の書き方 package jp.co.confrage; public class Instan...
レコード – 【Java16】
レコード - 【Java16】 Java14でプレビューとして追加されたレコードがJava16で正式に追加されました。 値を保持するだけのイミュータブルなクラスをrecordで簡単に定義することができます。 recordを使う事によってボイ...
テキストブロック – 【Java15】
テキストブロック - 【Java15】 Java13でプレビューとして追加されたテキストブロックがJava15で正式に追加されました。 ダブルクォーテーション3つを開始と終了で囲むことによって複数行の文字列が扱えるようになります。 pack...
Javaでlongからintに変換する方法
Javaでlongからintに変換する方法 Javaでlongからintに変換する場合、(int)でキャストもできますが、正しくはMath.toIntExact()メソッドを使用する必要があります。 public class Sample ...
WSL2(Ubuntu)でJavaのバージョンを変更する
WSL2(Ubuntu)でJavaのバージョンを変更する Ubuntuにインストールしているjavaの一覧を表示します。 $ update-alternatives --list java /usr/lib/jvm/java-11-open...
JavaでListのいずれかの要素が一つでもnullの場合trueを返す方法
JavaでListのいずれかの要素が一つでもnullの場合trueを返す方法 JavaでListのいずれかの要素が一つでもnullの場合trueを返す方法です。 streamのanyMatch()メソッドとObjects::isNullを使...
Javaでランダムパスワードを生成する
Javaでランダムパスワードを生成する Javaでjava.util.Randomクラスを使用してパスワードを生成します。 12文字のランダムパスワードを生成します。 import java.util.ArrayList; import j...
a java runtime environment(JRE) or java development kit(jdk) must be available in order to run STS4. No Java virtual machine was found after searching the following locations
a java runtime environment(JRE) or java development kit(jdk) must be available in order to run STS4. No Java virtual mac...
List要素の重複存在チェックする Java
List要素の重複存在チェックする Java JavaでList要素に重複要素が存在する場合のチェック方法です。 package jp.co.confrage; import java.util.HashSet; import java.u...
JavaでExecutorServiceを使用して並列処理・逐次処理をする
JavaでExecutorServiceを使用して並列処理・逐次処理をする 並列処理 並列処理を行う場合newFixedThreadPoolメソッドでインスタンスを作成します。引数で並列処理数を設定します。 以下、5つの処理を5つのスレッド...
Javaでbyte[]⇔Byte[]変換する方法
Javaでbyte変換する方法 byte配列⇔Byte配列に変換する方法です。 ライブラリを使って変換(byte) org.apache.commons.lang3.ArrayUtilsクラスのtoObjectメソッドを使用してbyte配列...
Javaでbyte配列から16進数に変換する方法
Javaでbyte配列から16進数に変換する方法 byte配列から16進数に変換する方法です。 ライブラリを使って変換 org.apache.commons.codec.binary.HexクラスのencodeHexメソッドを使用します。 ...
JavaでGraalJSの使い方
JavaでGraalJSの使い方 Scripting for the Java Platform JavaにはJavaScriptエンジンが搭載されています。 jdk6でRhino jdk6でRhinoが登場しました。が、jdk8からNas...
Javaで10進数⇔16進数に変換する際に前ゼロを付ける
Javaで10進数⇔16進数に変換する際に前ゼロを付ける
JavaでJXLライブラリでExcelを扱う
JavaでJXLライブラリでExcelを扱う JXLライブラリの開発が止まっているようですが、このライブラリを使う機会があったので使ってみました。 ファイル読み込み jxl.WorkbookクラスのgetWorkBookメソッドを使用してx...
JavaのPDFBoxでpdfからjpgに変換する
JavaのPDFBoxでpdfからjpgに変換する 前提 Java 1.7 PDFBox 2.0.23 pdfをページごとにjpgに変換したかったのでPDFBoxライブラリを使ってjpgに変換してみました。 PDFBox2系でPDPage....
JavaのQuartzライブラリのJobListenerで定義したジョブを監視する方法
JavaのQuartzライブラリのJobListenerで定義したジョブを監視する方法 org.quartz.JobListenerインタフェースをimplementsしたリスナークラスを作成してSchedulerのgetListenerM...
JavaのQuartzライブラリで定義したジョブを定期的に実行する方法
JavaのQuartzライブラリで定義したジョブを定期的に実行する方法 Quartzライブラリを使ってジョブを定期的に実行することができます。Spring Batchでも似たことが可能です。 build.gradle dependencie...
JavaのライブラリjacksonでJsonNodeの値が配列の場合にString型のListに変換する方法
JavaのライブラリjacksonでJsonNodeの値が配列の場合にString型のListに変換する方法 JSONのvalueが配列の場合があると思います。 { "key1":{ "id":20, "name":"takahashi" ...
JavaでS3のオブジェクトが存在するしないを確認する方法
JavaでS3のオブジェクトが存在するしないを確認する方法 S3のオブジェクトを取得するときにgetObjectメソッドを使いますが、存在しないオブジェクトキーの場合例外が発生してしまいます。 存在するかしないかを確認するdoesObjec...
JavaでSNSサブスクリプションを登録削除する方法
JavaでSNSサブスクリプションを登録削除する方法 SNSサブスクリプション登録 JavaでSNSサブスクリプションを登録してみます。※トピックは作成済みとします。 gradleの場合は、build.gradleに1文追加します。 bui...
【SpringBoot】AutoConfigureから除外する方法
こんにちは東です。 今回はSpringBootを使ったMock等を作成するにあたって、AutoConfigureで不要なConfigurationClassを利用しないように設定します。 やり方 方法は簡単で、@SpringBootAppl...
VSCodeでJava開発する際のショートカットキー一覧
VSCodeでJava開発する際のショートカットキー一覧
Java8のStreamでPOJOのフィールド名を配列にする方法
Java8のStreamでPOJOのフィールド名を配列にする方法 POJOのフィールド名をArrays.streamメソッドで配列にする方法です。 以下の従業員クラスがあるとします。 package jp.co.confrage; impo...
JavaのYearMonthクラス(年月)からLocalDate(年月日の1~末日)に変換する
JavaのYearMonthクラス(年月)からLocalDate(年月日の1~末日)に変換する YearMonthクラスからLocalDateの1~末日のインスタンスを生成したい時のコーディングです。 package jp.co.confr...
JavaのライブラリjacksonでJsonNodeクラスとreadTreeメソッドで深い階層のJSON形式を読み込む方法
JavaのライブラリjacksonでJsonNodeクラスとreadTreeメソッドで深い階層のJSON形式を読み込む方法
JavaのライブラリjacksonでCSVを出力する方法
JavaのライブラリjacksonでCSVを出力する方法
JavaのライブラリjacksonでCSVを読み込む方法
JavaのライブラリjacksonでCSVを読み込む方法 jackson-dataformat-csvライブラリを使用してCSVやTSVを読み込むことができます。 Jackson バージョン Jackson Dataformat CSV 2...
Javaのライブラリjacksonの使い方
Javaのライブラリjacksonの使い方
Javaのデザインパターンファクトリメソッド
Javaのデザインパターンファクトリメソッド factoryメソッドはstaticメソッドです。※Boolean.valueOfメソッド等 メリット コンストラクタはクラス名になるが、メソッドなので分かりやすい名前に命名できる シングルトン...
JavaのString型でnullを”null”という文字列に変換する方法
JavaのString型でnullを"null"という文字列に変換する方法 参照型変数がnullの場合に、"null"という文字列を返すString.valueOfメソッドを使用すれば"null"という文字列が返ってきます。 JavaでSt...
Java Bronzeのpackage文纏め
Java Bronzeのpackage文纏め package文で一番重要なのは先頭行に書くことです。import文より下に書いてはいけません。 import java.util.*; package jp.co.confrage; // 先...
Java SilverのStringクラスのコンスタントプール纏め
Java SilverのStringクラスのコンスタントプール纏め Stringクラスのみコンスタントプールという仕組みがあるようで、同じ文字列なら、インスタンスを使いまわすという仕組みがあるようです。これをコンスタントプールと言います。 ...
Java Silverの&&と||の纏め
Java Silverの&&と||の纏め if分のand条件やor条件で、&&や||を使いますが、この問題の引っかけがありました。 public class Main { public static void main(String[] a...
Java Bronzeのプリミティブ型纏め
Java Bronzeのプリミティブ型纏め プリミティブ型を明示的に初期化しなかった場合の初期値がどうなるか出題されます。 これはクラスのフィールド(メンバ変数)のみ初期化されることを覚えておく必要があります。 ローカル変数は初期化されませ...
Java Bronzeのエントリーポイントmainメソッド纏め
Java Bronzeのエントリーポイントmainメソッド纏め Javaのエントリーポイントであるmainメソッドについて出題されます。 以下、エントリーポイントの決まりです。 mainは小文字 public static void 引数は...
Java Bronzeのfor文纏め
Java Bronzeのfor文纏め 新人にJava Bronzeを無理矢理取得させるために教えていたら侮ることなかれ、、。for文ですごい引っかけ問題が満載でした。 まずは無限ループになるパターンです。 これはなんとなくわかります。 これ...
Java Bronzeのコンストラクタ纏め
Java Bronzeのコンストラクタ纏め Javaのコンストラクタを勉強する機会があったので纏めです。 オブジェクトをnewするとデフォルトコンストラクタが呼ばれます。デフォルトコンストラクタは引数なしコンストラクタのことを言います。 デ...
Javaでユーザーホームディレクトリを取得する方法
Javaでユーザーホームディレクトリを取得する方法 System.getProperty()の引数にuser.homeを渡すと、戻り値がStringでユーザーホームディレクトリが取得できます。 public class Main { pub...
Javaでカレントディレクトリを取得する方法
Javaでカレントディレクトリを取得する方法 System.getProperty()の引数にuser.dirを渡すと、戻り値がStringでカレントディレクトリが取得できます。 public class Main { public sta...
Java8でEnumをStreamに変換する方法
Java8でEnumをStreamに変換する方法 Enumのvaluesメソッドが配列を返すので、Arrays.streamメソッドを使用してstreamに変換することができます。 Arrays.stream(Week.values())....
LinkedList固有のメソッドを使用したい場合はLinkedListで宣言すること
LinkedList固有のメソッドを使用したい場合はLinkedListで宣言すること ArrayListやLinkedListを宣言するときは以下のように宣言します。 List<String> list = new LinkedList<...
JavaのAtomicIntegerの使い方
JavaのAtomicIntegerの使い方 java.util.concurrent.atomic.AtomicIntegerクラスがあります。 処理を同期させたい場合に使用するクラスです。 例えばstream().forEach内でイン...
Javaのプリミティブ型とラッパークラスについて
Javaのプリミティブ型とラッパークラスについて Javaでは、int,doubleなどプリミティブ型という型があります。 これに対してjava.lang.Integer型をint型のラッパークラスと言います。 プリミティブ型の特徴としてn...
JavaのListの宣言方法色々
JavaのListの宣言方法色々 Listの宣言方法をいくつか書きます。 List<String> list = new ArrayList<>(); list.add("test1"); list.add("test2"); 最近よく見る...
Javaのクラスとインタフェースの違い
Javaのクラスとインタフェースの違い Javaのinterfaceは、こういうメソッド持ってますよ!というクラスに対しての仕様です。(interfaceはクラスじゃない) java.util.ListはaddメソッドやaddAllメソッド...
Java7のPathクラスPathsクラスの動きを纏めてみました
Java7のPathクラスPathsクラスの動きを纏めてみました Java7からjava.nio.file.Pathクラスが追加されています。でも使ったことなかったのでちょっと触ってみました。 Path path = Paths.get("...