- ベストアンサー
Stringとは一体何だ?
askaaskaの回答
- askaaska
- ベストアンサー率35% (1455/4149)
Javaの世界では全てのものはオブジェクトというもので表現されます クラスというのはオブジェクトの設計図であり、 インスタンスはクラスを元に作られた活性中の状態にあるオブジェクトのことです java.lang.Stringは いわゆる「文字列」を表すクラスです メソッドというのはこのオブジェクトにはこういう機能がある という方針で作られるものです 例えば「車」というオブジェクトには「走る」という機能があるので メソッド「走る」を持たせるとか Stringの各メソッドもそういう方針で設計されています
関連するQ&A
- Stringクラスの変数の格納アドレスを知りたい
いつもお世話になります。 Javaの文字列クラスのStringは参照型ですが、この変数の値が格納されたアドレスを知るためにはどうすればよいのでしょうか。eclipse上で、文字列の変数に対してtoString()を試してみたところ、格納されている文字列が出力されました。 ※自作したクラス、たとえばtest.MyClassだとすれば、toString()を用いれば「test.MyClass@01234」というような表記で出力されますが、このような情報を取得するにはどうすればよいでしょうか。 宜しくお願いします。
- ベストアンサー
- Java
- Java Stringに関して
お世話になります。 SJC-Pの学習をしているのですが、Stringに関して、とある教科書に 以下のように記述されていましたが意味がわかりません。 わかりやすく教えていただけたらと思います。 教科書の文章(以下) 同じリテラル文字列に再び出会った場合、コンパイラは既にプール内 に格納されている文字列を使います。(3つ以上の参照変数が同じ 文字列を参照する可能性があるため、この処理はスレッドセーフ ではない。) 上記文章の( ) で囲まれた部分の意味がまったくわかりません。 よろしくお願いします。
- 締切済み
- Java
- char型とstring型について
char型とstring型について質問があります。 言語はC++です。 以下の関数があったとします。 void test(string a, string b string c){ 処理 } この関数を下記のように利用した場合について質問があります。 a.引数に直接文字列を挿入したケース test("aaa","bbb","ccc") b.変数に文字列を設定し、変数を引数にしたケース string a="aaa" string b="bbb" string c="ccc" test(a,b,c) (1)はコンパイルエラーになり、(2)は成功しました。 同じ様に見えるのですが、何が違うのでしょうか? また、関数の引数の型をchar*にした場合、(1)(2)のケースでコンパイルが通りました。char*型だと何が違うのでしょうか?
- ベストアンサー
- C・C++・C#
- String str = (String)url
classファイルでのアプレットで、自分のパスを編集しようと思っています。 自分のパスをgetCodeBase()で得て、文字列として認識させたいのだけど それができていません。 String str; str = getCodeBase().toString; コンパイルエラー シンボル: 変数 toString 位置 : java.net.URL の クラス strBuf = getCodeBase().toString; getCodeBase()はStringでなく、URL型を返すみたいです。 これを文字列のように編集したいからSrting型にしたいんだけど どうすればいいんですか?
- ベストアンサー
- Java
- string型とsbyte*型の変換
現在、C++で作成したクラスを、 C#から呼び出し実行しようとしております。 C++側での引数のデータ型は、「char *」 、 C#側での引数は、「sbyte*」となっています。 このクラスに対し、C#側から文字列をC++側に渡したい場合、 string型からsbyte*型へ変換しなければならないと 考えているのですが、その方法がわかりません。 そもそもの考え方が正しいのかどうかもわからない状態ですので、 質問そのものがとんちんかんなことを聞いているのかも知れませんが、 どうぞよろしくお願いいたします。
- ベストアンサー
- C・C++・C#
- stringオブジェクト
あるテキストの問題に 「STRINGオブジェクトはいくつ作成されますか? String a,b,c; a="1234"; b=a; c=a+b; 」 というのがあったんですが、答えは2個でaとb。 cはストリング文字列だから、という答えでした・・・ えーーー?!? とびっくりしてしまいました。 なぜなら、"1234"というのも文字列だと認識していたからです。 StringオブジェクトとString文字列の境目は何ですか?
- ベストアンサー
- Java
- VC String型のエンディアン変換
お世話になります String型の文字列のそれぞれの文字(一文字ずつ)の エンディアンを変更したいのですが、簡単な方法はないでしょうか? 今考えている方法は Stringから一文字ずつcharに入れ込んで このcharをシフトとマスクで入れ替える方法なのですが ((val<<8) & 0xff00) | ((val>>8) & 0x00ff) エンディアン変換の前後でString⇒charとchar⇒Stringを行うので、 少し煩雑になるのが気になっております。 型変換無しでエンディアン変換できないでしょうか
- 締切済み
- C・C++・C#
- STLのto_stringにlong double
こんばんは。 STLにto_string関数を見つけました。 変数の型を見るとlong doubleもサポートしているようなので値を入れてみたところfloat値を文字列に変換したものしか得られませんでした。 どのようにすればlong doubleを文字列として取得できるのでしょうか? 環境はVisualStudio2013です。
- ベストアンサー
- C・C++・C#
- Stringクラスは他のクラスとどう違う?
Objectクラスを抽象クラスとするサブクラスに Stringというクラスがあります。 ストリングオブジェクトの宣言は下記のようにします。 String[] url = new String[2]; ストリングクラスは以下のように宣言時に初期化が可能です。 String[] url = {"honyahonya.com","0"}; また、以下のような指定も出来ます。 this.method( new String[]{"honyahonya.com","0"} ); そこで質問ですが Stringとはなぜこのような扱い方ができるのですか? 他のクラスとは、例外的に扱いが違うだけなのですか? 初期化で指定した文字列はどのように解釈されて、どういう 扱いがされているのでしょうか? 普段はなんとも思わず使っていますが なんとなく気になりませんか・・・。
- ベストアンサー
- Java
- stringについて
確認したいのですが、ある関数の引数はconst string& strでやる場合 文字列リテラルは、ヒープが確保してそれをポインタであるstringに渡される。だからコピーされる手間が減るとういことでよろしいのでしょうか? 環境はvisual C++ 2005です。
- ベストアンサー
- C・C++・C#