言語・開発
平方根を求める – sqrt/cbrtメソッド public static double sqrt(double a)public static double cbrt(double a) a:任意の値 平方根を求めるには、sqrtメソッドを利用します。引数aが負数の場合、戻り値はNaNとなります。立方根を求めるcbrtメソッドもあり…
数値の切り上げ/切り捨てを行う – ceil/floor/roundメソッド public static double ceil(double a)public static double floor(double a)public static int round(float a)public static long round(double a) a:任意の値 小数点数を整数に丸めるには、c…
最大値/最小値を求める – max/minメソッド public static T max(T a, T b)public static T max(T a, T b) T:数値型(int、long、double、float) a、b:任意の数値 max/minメソッドを利用することで、引数で指定した2つの値を比較し、それぞれ大きい方、…
絶対値を求める – absメソッド public static T abs(T a) T:数値型(int、long、double、float) a:任意の数値 絶対値を求めるには、absメソッドを利用します。引数が正数、または0の場合は、引数そのものが戻り値となります。 MathAbs.java package com.e…
文字列を扱うには、Stringクラスを利用します。 文字列_目次 文字列 length/codePointCountメソッド isEmptyメソッド charAtメソッド indexOf/lastIndexOfメソッド equals/equalsIgnoreCaseメソッド regionMatchesメソッド compareTo/compareToIgnoreCas…
文字列を連結する – appendメソッド(StringBuffer/StringBuilderオブジェクト) public StringBuilder append(CharSequence str [,int start, int end]) str:追加する文字列 start:追加する文字列の開始位置 end:追加する文字列の終了位置 文字列を連結…
文字列を整形する – formatメソッド public static String format([Locale locale,] String format, Object… args)locale:整形に利用するロケール(省略時はシステムデフォルト) format:書式文字列 args:書式に割り当てる値 formatメソッドを利用するこ…
文字列を決められた区切り文字で連結する – joinメソッド public static String join(CharSequence deli, CharSequence… elems)public static String join(CharSequence deli,Iterable elems) deli:区切り文字 elems:連結する文字列 joinメソッドは、指定…
文字列を分割する – splitメソッド public String split(String regex [,int limit]) regex:区切り文字(正規表現) limit:最大の分割数 splitメソッドは、正規表現(引数regex)にマッチした位置で文字列を分割し、分割した結果を文字列配列として返しま…
文字列を置き換える – replaceメソッド public String replace(char old, char new)public String replace(CharSequence old, CharSequence new) old:置換対象の文字(列) new:置換後の文字(列) replaceメソッドは、文字列に含まれる部分文字列oldを、…
部分文字列を取得する – substringメソッド public String substring(int begin [,int end]) begin:開始位置 end:終了位置 substringメソッドを利用することで、文字列のbegin~end-1文字目を抜き出すことができます(文字列先頭を0文字目と数えます)。引…
文字列の大文字⇔小文字を変換する – toLowerCase/toUpperCaseメソッド public String toLowerCase([Locale locale])public String toUpperCase([Locale locale]) locale:ロケール toLowerCaseメソッドは文字列に含まれる大文字を小文字に、toUpperCaseメソ…
文字列が指定の接頭辞/接尾辞を持つかを判定する – startsWith/endsWithメソッド 文字列が指定の接頭辞/接尾辞を持つかを判定する – startsWith/endsWithメソッド public boolean startsWith(String prefix [,int offset])public boolean endsWith(Strin…
文字列の前後の空白を除去する – trimメソッド public String trim() 文字列から前後の空白を除去するには、trimメソッドを利用します。ここで言う空白には、半角スペースだけでなく、改行文字やタブ文字も含まれます(ただし、全角スペースは含まれません)…
文字列の大小を比較する – compareTo/compareToIgnoreCaseメソッド public int compareTo(String str)public int compareToIgnoreCase(String str) str:比較する文字列 文字列の大小を辞書順に比較するには、compareToメソッドを利用します。現在の文字列…
特定範囲の文字列を比較する – regionMatchesメソッド public boolean regionMatches([boolean ignore,]int toff, String other, int ooff, int len) ignore:大文字小文字を無視するか toff:比較される文字列の開始位置 other:比較する文字列 ooff:比較…
文字列が等しいかを確認する – equals/equalsIgnoreCaseメソッド public boolean equals(Object str)public equalsIgnoreCase(String str) str:比較する文字列 2つの文字列が等しいかどうかを確認するには、equalsメソッドを利用します。大文字小文字を区…
文字列を検索する – indexOf/lastIndexOfメソッド public int indexOf(String str [,int index])public int lastIndexOf(String str [,int index]) index:検索開始位置(先頭文字は0) 文字列に含まれる部分文字列を検索するには、indexOfメソッドを利用し…
n番目の文字を抜き出す – charAtメソッド public char charAt(int index) index:文字位置(先頭文字は0) 文字列からn番目の文字列を抜き出すには、charAtメソッドを利用します。文字列の先頭は0文字目と見なします(よって、最後の文字は「length() -1」番…
文字列が空かどうかを判定する – isEmptyメソッド public boolean isEmpty() isEmptyメソッドを利用することで、文字列が空であるかどうかを判定できます。lengthメソッドが0であるかどうかで判定することもできますが、空であるかどうかの判定であれば、ま…
文字列長を取得する – length/codePointCountメソッド public int codePointCount(int begin, int end)public int length() begin:長さを求める範囲の開始位置 end:終了位置 文字列の長さを取得するには、lengthメソッドを利用します。文字列はUnicode単…
文字列を扱うには、Stringクラスを利用します。ただし、他のクラスと異なり、new演算子によるインスタンス化は必要ありません。以下のように、文字列リテラルとして表現できるからです。 var str = "こんにちは"; new演算子は利用しないnew演算子を利用して…
正規表現とは、文字列パターンを表すための規則のことです。正規表現を使って表された文字列パターンのことを、正規表現パターンと言います。たとえば、郵便番号であれば「[0-9]{3}-[0-9]{4}」のように表現できます。正規表現を利用することで、非定型な文字…
文字列を分割する – splitメソッド public String[] split(CharSequence input [,int limit])input:分割対象の文字列limit:最大分割数 Pattern#splitメソッドを利用することで、指定の文字列を正規表現にマッチした箇所で分割できます。たとえば以下は、…
文字列を置き換える – replaceAllメソッド public String replaceAll(String rep) rep:置き換え後の文字列 正規表現パターンにマッチした文字列を置き換えるには、Matcher#replaceAllメソッドを利用します。replaceAllメソッドの引数repには、プレイスホル…
正規表現を使って文字列を検索する – Pattern/Matcherクラス public static Pattern compile(String regex [,int flags])public Matcher matcher(CharSequence input) regex:正規表現 flags:検索オプション input:入力文字列 正規表現パターンで文字列を…
以下に、基本的な正規表現パターンをまとめます。 主な正規表現パターン パターン 概要 [xyz] x、y、zいずれか [^xyz] x、y、z以外の文字 [a-zA-Z] a~z、またはA~Z X? Xが0または1回発生 X* Xが0回以上発生 X+ Xが1回以上発生 X{n} Xがn回発生 X{n,} Xがn…
ラッパークラスとは、基本型の値をラップして、オブジェクトとしての体裁を与えるクラスのことです。 ラッパークラス_目次 ラッパークラス 基本型の値をラッパークラスのオブジェクトに変換する 文字列からラッパーオブジェクトを作成する
public static Long valueOf(String s)throws NumberFormatException … Long型 s:解析される文字列 valueOfメソッドを利用することで、文字列からラッパーオブジェクトを生成することもできます。たとえば以下は文字列の100からLong型のオブジェクトを生成…
Javaでは、オートボクシングという機能があり、特に意識することなく、基本型とラッパーオブジェクトとを相互変換できます。 Integer i1 = 1; …(1) int i2 = i1; …(2) 上の例であれば、(1)は基本型の値をInteger型のオブジェクトに保存しています(ボ…
ラッパークラスには、以下のようなクラスがあります。 主なラッパークラス ラッパークラス 基本型 Boolean boolean Byte byte Character char Double double Float float Integer int Long long Short short ラッパークラス_目次 ラッパークラス 基本型の値…
アノテーションとは、クラスやそのメンバー、引数などに対して付与できる注釈です。アノテーションを利用することで、ロジックそのものに関係しない情報をシンプルにコードに追加できます。 アノテーション_目次 標準アノテーション @interface命令 アノテー…
アノテーションそのものは、単なる名前と型の定義にすぎませんので、指定されたアノテーションに応じてどのような処理を実施するかを決めるのは、呼び出し元の責任です。アノテーション情報は、Method#getAnnortationメソッドで取得できます。Methodオブジェ…
独自のアノテーションを定義する – @interface命令 @intarface name { definiton} name:アノテーション名 definition:アノテーションの定義 @interface命令を利用することで、アノテーションを自分で定義することもできます。たとえば以下は、Versionアノ…
アノテーションの中でも、Java SE標準で提供されているアノテーションのことを、標準アノテーションと呼びます。Java SE 8の時点では、以下のようなものがあります。 オーバーライドを明示する – @Overrideアノテーション そのメソッドがスーパークラスのメ…
enum型(列挙型)とは、複数の定数をひとまとまりで扱うためのデータ型です。 enum型(列挙型)_目次 列挙型を定義する – enum型 列挙型のメソッド コンストラクター/フィールド/メソッドの定義
列挙型もまたクラスの一種ですから、配下にコンストラクターやフィールド/メソッドを定義することも可能です。 WeekdayEnum.java public enum WeekdayEnum { Sunday("sun"), Monday("mon"), Tuesday("tue"), Wednesday("wed"), Thursday("thu"), Friday("fr…
列挙型は、暗黙的にEnumクラス(java.langパッケージ)を継承したクラスの一種です。そして、列挙定数を参照した「WeekdayEnum.Sunday」は、Enumオブジェクトです。Enumオブジェクトでは、以下のようなメソッドを利用できます。 Enumクラスのメソッド メソッ…
列挙型を定義する – enum型 [modifier] enum name { member, …} modifier:修飾子(public、strictfpのみ) name:列挙型の名前 member:列挙定数 列挙型の宣言には、enumキーワードを利用します。enumブロックの配下に、名前(列挙定数)をカンマ区切りで列…
例外(exception)とは、アプリケーションを実行した時に発生する異常な状態、エラーのことを言います。Javaでは例外はクラスとして表されます。 例外処理_目次 例外処理 try…catch命令 finally句 throw命令
例外をスローする – throw命令 throw exclazz exclazz:例外オブジェクト 例外はキャッチ(捕捉)するばかりでなく、自分で投げることもできます(これを「例外をスローする」と言います)。メソッドの中で例外をスローする際には、メソッド定義でもthrows句…
例外の有無に関わらず、処理を実行する – finally句 try { tstatements} catch(exclazz ex) { cstatements} finally { fstatements} tstatements:例外が発生する可能性がある処理 exclazz:例外クラス ex:例外クラスを表す変数名 cstatements:例外が発生…
例外を処理する – try…catch命令 try {tstatements} catch(exclazz ex) {cstatements} tstatements:例外が発生する可能性がある処理 exclazz:例外クラス ex:例外クラスを表す変数名 cstatements:例外が発生した時に実行される処理 コードの中で発生する…
以下は、例外オブジェクトの階層構造です。 Object┗Throwable ┣Error ┃┗エラー例外 ┗Exception ┣RuntimeException ┃┗実行時例外(非検査例外) ┗検査例外 例外は、大きく(1)エラー例外、(2)実行時例外、(3)検査例外に分類できます。エラー例外は、仮想…
Javaでデータの入出力を行うには、ストリームというしくみを利用するのが一般的です。 ストリーム_目次 ストリーム FileInputStream/FileOutputStreamクラス InputStreamReader/OutputStreamWriterクラス BufferedReader/BufferedWriterクラス ObjectInpu…
ファイルの操作 – Fileクラス File(String path) path:ファイルのパス Fileクラスは、フォルダー/ファイルの情報を管理すると共に、フォルダー/ファイルを操作するための手段を提供するクラスです。FileInputStream/FileOutputStreamなど、ファイルを扱…
オブジェクトの保存 – ObjectInputStream/ObjectOutputStreamクラス ObjectInputStream(InputStream in)ObjectOutputStream(OutputStream out) in:入力ストリーム out:出力ストリーム Javaでは、Objectをシリアライズすることで、バイトストリームに出力…
バッファリング処理 – BufferedReader/BufferedWriterクラス BufferedReader(Reader in [,int sz])BufferedWriter(Writer out [,int sz]) in:入力ストリーム out:出力ストリーム out:出力ストリーム バッファリング処理とは、書き込み時であればデータを…
テキストファイルの操作 – InputStreamReader/OutputStreamWriterクラス InputStreamReader(InputStream in [,String char])OutputStreamWriter(OutputStream out [,String char]) in:入力ストリーム out:出力ストリーム char:文字コード(UTF-8、EUC_JP…
バイナリファイルの操作 – FileInputStream/FileOutputStreamクラス FileInputStream(String name)FileOutputStream(String name [,boolean append]) name:ファイルのパス append:追記モードで開くか 画像などのバイナリファイルを読み書きするには、File…