JavaA2Z

KAB-studio > プログラミング > JavaA2Z > タブ文字とは

タブ文字

日本語 札文字
英語 tab character
ふりがな たぶもじ
フリガナ タブモジ

解説

特殊文字の一種。
スペースと同等の機能を持つ文字。単純に「タブ」と言う事の方が多い。Unicode文字コード0x0009。エスケープシーケンスでは「\t」と記述する。
 
プログラム上ではスペースと同じ機能を持つが、見た目はスペース文字分となる。
これは、エディタやコンソールがタブ文字を「スペース文字分」に見えるよう出力しているためである。文字数としてはあくまで1文字である。
また、この文字数は「頭」から数えるため、たとえばタブ文字の「見かけのサイズ」がスペース4文字分の時、頭にタブ文字がある場合と、頭とタブ文字の間にスペースが3文字ある場合とでは見た目は同じとなる。
 
タブ文字は、主にネストを見やすくするためのインデントに使用する。
ブロックは、入れ子関係が複雑になると「{」と「}」を追うだけでは範囲が分かりづらいため、視覚的に見やすくするためスペースもしくはタブ文字でインデントをすることで見やすくする。
 
タブ文字の見た目が「スペース文字分か」は、出力するエディタなりコンソールなりの設定によって異なる。
Eclipseであれば、エディタのタブのサイズは「設定」ダイアログの「Java-「エディター」の「Appearance」タブの「Displayed tab width」の項目で設定できる。デフォルトは4である。
つまり、タブ文字は使用時の環境によって異なるという点に注意。
 
ネストインデントに使用するタブ文字のサイズは、一般にスペース4文字分が多い。
だが、「多い」だけで、4文字以外が使用される場合もある。4文字以外としては3文字や8文字が多い。
特に多人数のプロジェクトでは、他人が作ったプログラムを使用する場合に、それぞれのプログラマーが使用するエディタでタブ文字のサイズが異なると、プログラムが非常に見づらくなり、プログラマー間の仲が悪くなる傾向にある。
タブ文字のサイズに関しては人それぞれのスタイルがあるため、統一することは難しい。そのため、タブ文字を使用禁止とし、スペースのみ使用する場合も多い。
だが、スペースのみを使用する場合に、インデントを整えるための工数が無視できないこと、誤って全角スペースを入力しかねないことなど、問題も多い。
 
プログラム中ではなく出力時に使用する場合には、タブ文字の使用は控えた方がいいだろう。
タブ文字を使用することで文字を簡単に揃えることができる反面、タブ文字のサイズは環境に左右されるため、環境によっては大きく見た目が崩れる可能性があるためである。
ただし、文字を揃える目的ではなく、項目を分けるために使用することは多い。CSVの「カンマ」の代わりに「タブ文字」を使用するもので、Microsoft Excelに使用しやすいためよく使われている。

参考サイト

  • (参考サイトはありません)

(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// 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い" );
/*
    あ    い
      あ    い
*/
        // このように、最初にスペースがあってもなくても
        // 同じ幅になります。
    }
}
// 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い" );
/*
	あ	い
  	あ	い
*/
		// このように、最初にスペースがあってもなくても
		// 同じ幅になります。
	}
}

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/06/17
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。