[解決済み] Java, 配列の要素をシフトする
2022-01-29 15:06:38
質問
Javaでオブジェクトの配列を持っていて、1つの要素を一番上に引っ張って、残りを1つ下にずらそうとしているのですが、どうすればいいですか?
サイズ10の配列があり、5番目の要素を引き出そうとしているとします。5番目の要素は位置
0
で、0から5までのすべての要素が1つ下にシフトされます。
このアルゴリズムは、要素を適切にシフトさせるものではありません。
Object temp = pool[position];
for (int i = 0; i < position; i++) {
array[i+1] = array[i];
}
array[0] = temp;
どうすれば正しくできるのか?
どのように解決するのですか?
配列が {10,20,30,40,50,60,70,80,90,100} であると仮定します。
あなたのループが行うことは
イテレーション1。 array[1] = array[0]; {10,10,30,40,50,60,70,80,90,100} とする。
イテレーション2。 array[2] = array[1]; {10,10,10,40,50,60,70,80,90,100} とする。
本来やるべきことは
Object temp = pool[position];
for (int i = (position - 1); i >= 0; i--) {
array[i+1] = array[i];
}
array[0] = temp;
関連
-
[解決済み] メソッドがそのスーパークラスのメソッドをオーバーライドしない
-
[解決済み】純粋なJUnitテストにVisibleForTestingを使用する方法
-
[解決済み】Java: GZIPInputStreamの作成に失敗しました。GZIP形式ではありません
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScript で配列に値が含まれているかどうかを確認するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] 山積みされた靴下を効率よく組み合わせるには?
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] Javaで配列に特定の値が含まれているかどうかを判断するにはどうすればよいですか?
-
[解決済み] Javaで配列を宣言し、初期化する方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】このコンパイルユニットは名前付きモジュールに関連しているため、名前付きパッケージeclipseを宣言する必要があります。
-
[解決済み】javaで指定されたファイルが見つからない
-
[解決済み】Android java.lang.IllegalStateException: Android java.lang.IllegalStateException: Could not execute method of the activity
-
[解決済み] 二項演算子「&」のオペランド型がおかしい java
-
[解決済み】Javaでユーザー入力を待機させる方法
-
[解決済み】Hibernateの例外「failed to lazily initialize a collection of role」の解決方法
-
[解決済み】Eclipseで「JUnitテストが見つかりませんでした。
-
[解決済み】純粋なJUnitテストにVisibleForTestingを使用する方法
-
[解決済み] StringBuilderをクリアまたは空にするにはどうすればよいですか?重複] [重複] [重複] [重複] [重複] [重複
-
[解決済み] SQLエラー。0, SQLState: 08S01 通信リンクの失敗 [重複]。