JavaでString型とchar型を変換する方法を現役エンジニアが解説【初心者向け】
初心者向けにJavaでString型とchar型を変換する方法について解説しています。まず最初に、String型とchar型の特徴と違いについて説明します。次にString型からchar型への変換、char型からString型への変換それぞれの方法について学びましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
JavaでString型とchar型を変換する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読んでみましょう。
なお本記事は、TechAcademyのオンラインブートキャンプ、Java講座の内容をもとに作成しています。
今回は、Javaに関する内容だね!
どういう内容でしょうか?
String型とchar型を変換する方法について詳しく説明していくね!
お願いします!
String型とは
String型は、複数の文字列で表すことのできるクラスです。
intやbyte、char型などの変数とは少し性質の異なり、「クラス型変数」と呼ばれます。
これに対して、intやchar型などの変数は、「基本データ型変数」と呼ばれるものです。
String型変数を定義するには、ダブルクォーテーションを使って、
String 変数名 = “文字列”
と記述します。
char型とは
char型は1文字を格納するためのクラスです。
実際に格納しているデータは「あ」「い」「う」「え」「お」のような文字そのものではなく、コンピュータで扱いやすいような文字コードです。それぞれの文字に割り当てられた数字をデータとして保持しています。
Javaの文字コードはUnicodeであるため、一つ一つの文字を0~65535の番号に割り当てています。
char型は2の16乗個のデータを扱うために、16ビット(2バイト)の符号なし整数を保持しています。
char型を定義するには、シングルクォーテーションで、
char 変数名 = ‘1文字’
のように記述します。
String型とchar型の定義
それぞれの変数は次のように定義します。
String型
String str = "こんにちは"
char型
char ch = 'あ'
Javaでもともと用意されている変数は「基本データ型変数」、基本データ型変数を使って定義した扱いやすい変数が「クラス型変数」です。
これをString型とchar型で考えてみましょう。
「あ」「い」「う」「え」「お」などの1文字1文字を格納するための基本変数は、char型の「基本データ型変数」です。
対して、文字を組み合わせてできる「あお」や「いえ」などの単語などを扱いやすくしてくれる変数がString型の「クラス型変数」だといえます。
基本的には、char型の集まりがString型だと考えられます。
char型の配列もString型と同じようにchar型の集まりと考えられるため、単語や文章などを扱うことが可能です。
しかし、String型には「メソッド」があるのでString型の方が扱いやすいといえるでしょう。
String型からchar型に変換する方法
String型→char型に変換をする方法は、JavaのStringクラスのメソッドであるtoCharArray()メソッドを使うことで可能となります。
(メソッドはデータの処理方法をまとめたものです)
String型は複数の文字の集合体であるため、char型でデータを受け取るには配列を用いる必要があります。
そのため、実際に使う場合には、
String str = "文字列" char[] c = str.toCharArray();
のように記述しましょう。
char型からString型に変換する方法
ここでは、逆にchar型→String型の変換を行う方法を紹介します。
今回使うメソッドはValueOf()メソッドです。
ValueOf()メソッドは次のように記述しましょう。
char c = '1文字' String str = String.valueOf(c)
また、char型の配列をString型に変換したい場合には、
c = new char[] { '1文字', '1文字', '1文字' }; s = new String(c);
のように記述してください。
実際に書いてみよう
まずは、String型→char型の変換を行います。
public class Test{ public static void main(String[] args){ String str = "あいうえお"; char[] c = b1.toCharArray(); System.out.println(str); } }
次、char型→String型の変換です。
public class Test{ public static void main(String[] args){ //1文字の場合 char c1 = 'あ'; String str1 = String.valueOf(c1); System.out.println(str1); //配列の場合 char[] c2= { 'A', 'B', 'C' }; String str2 = new String(c2); System.out.println(str2); } }
以上で変換が完了しました。
まとめると、
- char型は「基本データ型変数」で、その集まりがString型という「クラス型変数」
- String型→char型の変換には、toCharArray()メソッドを使う
- char型→String型の変換には、1文字の変換ならvalueOf()メソッドを、配列からの変換ならString()を使う
となります。
String型とchar型の変換方法について、しっかりと理解しておくことはJavaプログラマにとって重要であるため、覚えておきましょう。
執筆してくれたメンター
メンターOS
AIプログラミングを使って開発を行う。 プログラミング歴は約3年。 Pythonは割と好きな方。JavaもAndroid開発で触れていたりする。 大学では物理学を勉強中。 好きな物理理論は一般相対性理論らしい。 意外と動物が好きだったり、、、。 |
JavaでString型とchar型を変換する方法がよくわかりました!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。