20

In the Android API http://developer.android.com/guide/topics/data/data-storage.html#pref

It says:

Shared Preference allows you to save and retrieve persistent key-value pairs of primitive data types. You can use SharedPreferences to save any primitive data: booleans, floats, ints, longs, and strings.

Is String a primitive data type or an Object?

4

6 に答える 6

22

Javaプログラミング言語を考える限り、

プリミティブ型は言語によって事前定義されており、予約済みのキーワードによって名前が付けられます。

上記の 8 つのプリミティブ データ型に加えて、Java プログラミング言語は、java.lang.Stringクラスを介して文字列の特別なサポートも提供します。

—— Java™ チュートリアル - プリミティブ データ型から

したがって、Java本などではキーワードではなく、プリミティブでもありません。SharedPreferencesまだプリミティブの1つと呼んでいるかもしれませんが、それ自体は本からのものではありませんJava.int、float、charなどの基本的な型のセットの1つである可能性があります.

于 2013-01-23T06:16:34.760 に答える
22

JLSから直接:

A string literal is a reference to an instance of class String

いいえ、プリミティブではありません。

于 2013-01-23T06:21:32.583 に答える
3

Android SharedPreferences を使用する場合、(SharedPreferences.Editor を使用して) getString と putString を使用します。この場合、どちらも Java String オブジェクトです。Java のドキュメントでは、String は技術的にはプリミティブではないと説明されていますが、構文的には 1 つとして扱われることが多く、普及しているため、プリミティブと呼ばれることもあります。Android はおそらくこの定義を使用します ( http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.htmlを参照) 。

于 2013-01-23T06:13:58.243 に答える
3

文字列はオブジェクトであり、Android または Java ではプリミティブ型ではありません。文字列を使用して SharedPreferences に格納できます。

于 2013-01-23T06:14:29.257 に答える
0

String はオブジェクトですが、SharedPreferences で使用できます。文字列もキーと値のペアとして保存されます

于 2013-01-23T06:13:39.290 に答える