タブ文字
日本語 | 札文字 |
英語 | tab character |
ふりがな | たぶもじ |
フリガナ | タブモジ |
特殊文字の一種。
スペースと同等の機能を持つ文字。単純に「タブ」と言う事の方が多い。Unicodeの文字コードは0x0009。エスケープシーケンスでは「\t」と記述する。
プログラム上ではスペースと同じ機能を持つが、見た目はスペース数文字分となる。
これは、エディタやコンソールがタブ文字を「スペース数文字分」に見えるよう出力しているためである。文字数としてはあくまで1文字である。
また、この文字数は「行頭」から数えるため、たとえばタブ文字の「見かけのサイズ」がスペース4文字分の時、行頭にタブ文字がある場合と、行頭とタブ文字の間にスペースが3文字ある場合とでは見た目は同じとなる。
タブ文字は、主にネストを見やすくするためのインデントに使用する。
ブロックは、入れ子関係が複雑になると「{」と「}」を追うだけでは範囲が分かりづらいため、視覚的に見やすくするためスペースもしくはタブ文字でインデントをすることで見やすくする。
タブ文字の見た目が「スペース何文字分か」は、出力するエディタなりコンソールなりの設定によって異なる。
Eclipseであれば、エディタのタブのサイズは「設定」ダイアログの「Java」-「エディター」の「Appearance」タブの「Displayed tab width」の項目で設定できる。デフォルトは4である。
つまり、タブ文字は使用時の環境によって異なるという点に注意。
ネストのインデントに使用するタブ文字のサイズは、一般にスペース4文字分が多い。
だが、「多い」だけで、4文字以外が使用される場合もある。4文字以外としては3文字や8文字が多い。
特に多人数のプロジェクトでは、他人が作ったプログラムを使用する場合に、それぞれのプログラマーが使用するエディタでタブ文字のサイズが異なると、プログラムが非常に見づらくなり、プログラマー間の仲が悪くなる傾向にある。
タブ文字のサイズに関しては人それぞれのスタイルがあるため、統一することは難しい。そのため、タブ文字を使用禁止とし、スペースのみ使用する場合も多い。
だが、スペースのみを使用する場合に、インデントを整えるための工数が無視できないこと、誤って全角スペースを入力しかねないことなど、問題も多い。
プログラム中ではなく出力時に使用する場合には、タブ文字の使用は控えた方がいいだろう。
タブ文字を使用することで文字を簡単に揃えることができる反面、タブ文字のサイズは環境に左右されるため、環境によっては大きく見た目が崩れる可能性があるためである。
ただし、文字を揃える目的ではなく、項目を分けるために使用することは多い。CSVの「カンマ」の代わりに「タブ文字」を使用するもので、Microsoft Excelに使用しやすいためよく使われている。
スペースと同等の機能を持つ文字。単純に「タブ」と言う事の方が多い。Unicodeの文字コードは0x0009。エスケープシーケンスでは「\t」と記述する。
プログラム上ではスペースと同じ機能を持つが、見た目はスペース数文字分となる。
これは、エディタやコンソールがタブ文字を「スペース数文字分」に見えるよう出力しているためである。文字数としてはあくまで1文字である。
また、この文字数は「行頭」から数えるため、たとえばタブ文字の「見かけのサイズ」がスペース4文字分の時、行頭にタブ文字がある場合と、行頭とタブ文字の間にスペースが3文字ある場合とでは見た目は同じとなる。
タブ文字は、主にネストを見やすくするためのインデントに使用する。
ブロックは、入れ子関係が複雑になると「{」と「}」を追うだけでは範囲が分かりづらいため、視覚的に見やすくするためスペースもしくはタブ文字でインデントをすることで見やすくする。
タブ文字の見た目が「スペース何文字分か」は、出力するエディタなりコンソールなりの設定によって異なる。
Eclipseであれば、エディタのタブのサイズは「設定」ダイアログの「Java」-「エディター」の「Appearance」タブの「Displayed tab width」の項目で設定できる。デフォルトは4である。
つまり、タブ文字は使用時の環境によって異なるという点に注意。
ネストのインデントに使用するタブ文字のサイズは、一般にスペース4文字分が多い。
だが、「多い」だけで、4文字以外が使用される場合もある。4文字以外としては3文字や8文字が多い。
特に多人数のプロジェクトでは、他人が作ったプログラムを使用する場合に、それぞれのプログラマーが使用するエディタでタブ文字のサイズが異なると、プログラムが非常に見づらくなり、プログラマー間の仲が悪くなる傾向にある。
タブ文字のサイズに関しては人それぞれのスタイルがあるため、統一することは難しい。そのため、タブ文字を使用禁止とし、スペースのみ使用する場合も多い。
だが、スペースのみを使用する場合に、インデントを整えるための工数が無視できないこと、誤って全角スペースを入力しかねないことなど、問題も多い。
プログラム中ではなく出力時に使用する場合には、タブ文字の使用は控えた方がいいだろう。
タブ文字を使用することで文字を簡単に揃えることができる反面、タブ文字のサイズは環境に左右されるため、環境によっては大きく見た目が崩れる可能性があるためである。
ただし、文字を揃える目的ではなく、項目を分けるために使用することは多い。CSVの「カンマ」の代わりに「タブ文字」を使用するもので、Microsoft Excelに使用しやすいためよく使われている。
参考サイト
- (参考サイトはありません)
// Sample.java
/*
注:その他の単語の例では、タブはすべてスペース4文字に置換してあります。
この例だけはタブをそのまま使用しています。
タブは、Internet Explorerでは8文字で出力されるので見た目が変わります。
*/
public class Sample
{
// ←たとえばこれもタブ。
// このタブは「タブ文字」になります。
// また、このタブを入力する場合には「タブキー」を押します。
public static void main( String[] args )
{
// 文字列リテラルにタブ文字を入れる場合には
// エスケープシーケンスの「\t」を使用します。
System.out.println( "あ\tい" );
/*
あ い
*/
// タブは、行頭からの文字数で数えます。
System.out.println( "\tあ\tい" );
System.out.println( " \tあ\tい" );
/*
あ い
あ い
*/
// このように、最初にスペースがあってもなくても
// 同じ幅になります。
}
}
/*
注:その他の単語の例では、タブはすべてスペース4文字に置換してあります。
この例だけはタブをそのまま使用しています。
タブは、Internet Explorerでは8文字で出力されるので見た目が変わります。
*/
public class Sample
{
// ←たとえばこれもタブ。
// このタブは「タブ文字」になります。
// また、このタブを入力する場合には「タブキー」を押します。
public static void main( String[] args )
{
// 文字列リテラルにタブ文字を入れる場合には
// エスケープシーケンスの「\t」を使用します。
System.out.println( "あ\tい" );
/*
あ い
*/
// タブは、行頭からの文字数で数えます。
System.out.println( "\tあ\tい" );
System.out.println( " \tあ\tい" );
/*
あ い
あ い
*/
// このように、最初にスペースがあってもなくても
// 同じ幅になります。
}
}
// Sample.java /* 注:その他の単語の例では、タブはすべてスペース4文字に置換してあります。 この例だけはタブをそのまま使用しています。 タブは、Internet Explorerでは8文字で出力されるので見た目が変わります。 */ public class Sample { // ←たとえばこれもタブ。 // このタブは「タブ文字」になります。 // また、このタブを入力する場合には「タブキー」を押します。 public static void main( String[] args ) { // 文字列リテラルにタブ文字を入れる場合には // エスケープシーケンスの「\t」を使用します。 System.out.println( "あ\tい" ); /* あ い */ // タブは、行頭からの文字数で数えます。 System.out.println( "\tあ\tい" ); System.out.println( " \tあ\tい" ); /* あ い あ い */ // このように、最初にスペースがあってもなくても // 同じ幅になります。 } }