問題タブ [readonly-collection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - 複数のデータベースリンクを使用してクエリを実行すると、jdbc oracle読み取り専用アクセスエラーが発生する
3つのOracleデータベースdb1、db2、db3に3人の読み取り専用ユーザーがいて、db1のpl/sqlにログオンすると、クエリを実行できます
それから私はjdbcコードを試しました
ORA-16000 データベース オープン読み取り専用アクセス エラーが発生しました
それから私は次のようなあらゆる種類のことを試しました:
私が考えられることは何でも、すべて同じエラーが発生しました。
PL/SQLで使用されるJDBCとOracleクライアントの違いは何ですか? どうすればこの仕事を得ることができますか?
java - 「? extends ParentClass」は読み取り専用になりますか?
次のコード Java では、 list を作成しましたnums
。宣言中に別のリストを割り当てることができます。ただし、 以外の新しいアイテムは追加できませんnull
。それで、それnums
は読み取り専用であることを意味しますか?なんで?そのリストに新しいアイテムを追加することは可能ですか?
私はこのリンクを通過しました。正確な理由はわかりません。
c# - インデックスを介して IReadOnlyCollection の要素にアクセスするにはどうすればよいですか?
私はセレンを使用しており、FindElements 関数を使用しているため、IReadOnlyCollection インターフェイスを実装する要素を取得しています。リストを繰り返し処理したいのですが、IReadOnlyCollection には Get(int index) のようなメソッドや [] 操作の実装がないようです。
要素にアクセスしてそれらを読み取りたいだけなので、結果をリストまたは配列に変換することは避けたいと思います。
これらの要素を別の配列に追加できるようにインデックスを管理する必要があるため、現在は foreach を使用したくありません。
これは私がやりたいことです:
ありがとう
c# - ReadOnlyCollection の書き込みストリームへ
私は、いくつかのマジック バイト シーケンスを含むバイナリ形式を使用しています。それらを不変の静的メンバーとして静的クラスに保持したい。
ReadOnlyCollection<byte>
( から返されるArray.AsReadOnly()
) は、 とは異なり、外部コードが値を変更するのを防ぎますbyte[]
。
しかし、今では、次のものが必要なため、Header
経由で出力できません。stream.Write()
byte[]
を書くエレガントな方法はありHeader
ますか? または、ループを記述して、バイトを 1 つずつストリームにフィードする必要がありますか?
c# - リストC#の読み取り専用リスト
大まかに言えば、私が作成しているプログラムには、分類可能な少数のエントリ (おそらく常に 30 未満) の格納が含まれます。これらのエントリを表示できるようにしたいのですが、それらを使用してクラスの外部から変更されないようにしたいと考えています。変更可能な Entry というクラスと、Entry オブジェクトのラッパーである ReadOnlyEntry という別のクラスを作成しました。これらの Entry オブジェクトを整理する最も簡単な方法はList<List<Entry>>
、それぞれList<Entry>
がカテゴリである を作成することです。しかし、そのデータを読み取り専用で公開することは、面倒で複雑になりました。次の各タイプのオブジェクトを 1 つずつ用意する必要があることに気付きました。
リストの最後の項目はパブリックとして公開されます。1 つ目ではエントリを変更でき、2 つ目ではエントリを追加または削除でき、3 つ目ではカテゴリを追加または削除できます。データが変更されるたびに、これらのラッパーを正確に保つ必要があります。これは私には複雑に思えるので、これを処理する露骨に良い方法があるかどうか疑問に思っています。
編集 1: 明確にするために、私は List.asReadOnly() の使用方法を知っており、上記で提案したことは私の問題を解決します。より良い解決策を聞きたいだけです。コードを教えてください。
c# - 辞書の変換> ReadOnlyDictionary へ>
次のような辞書があります。
次のように、値の型も読み取り専用である読み取り専用辞書を作成できるようにしたいと考えています。
最後の行では、型の違いにより、明らかにコンパイル エラーが発生しTValue
ます。
List<TValue>
元のディクショナリは外部ソースからプログラムによって入力されるため、a の使用も必要です。
この変換を実行する簡単な方法はありますか?
c# - C#ハッシュセット読み取り専用の回避策
このサンプルコードは次のとおりです。
そして、ここにテストコードがあります:
私の質問は次のとおり
です。「Real_ReadonlyHashSet」プロパティのより良い解決策はありますか?
Microsoft はいつか HashSet<T> に "AsReadOnly" メソッドを実装する予定ですか?
c# - 列挙をサポートするには、C# の読み取り専用で順序を保持するコレクションを使用する必要がありますか?
データ構造の要件は 2 つだけです。
- 読み取り専用にする
- 順序を保持します(常に特定の順序で列挙したい)。
IReadOnlyList
私はそれが秩序を保つことを知っています。使用できますが、インデックス作成は必要ありません。これは、 を使用する必要があることを意味しますIReadOnlyCollection
。残念ながら、秩序を保っているという情報は見つかりませんでした。
そうかどうか知っていますか?
c# - 追加することはできないが値を変更できる辞書のようなオブジェクトを持つ簡単な方法はありますか?
Composite
楽器と重みの辞書から構築されたクラスがあるとします。
}
このクラスはクライアントに公開されます。クライアントが 内の既存のキーの値を変更できるようにしたいのですが、Underlyings
新しいキーと値のペアを に追加することはできませんUnderlyings
。
クライアントコードが既存のキーの値を変更できないため、作成は機能しませんUnderlyings
。したがって、私の解決策は、この回答ReadOnlyDictionary
から辞書のラッパーを取得し、既存の値を変更できるようにセッターを変更することでした。しかし、これはばかげた解決策のように思えます。変更可能な既存のキーと値のペアを持つが、新しいキーと値のペアを追加できない辞書を持つラッパー クラスを作成するよりも簡単な方法はありますか? 非常に単純な質問で申し訳ありません。TValue IDictionary<TKey, TValue>.this[TKey key]